黑马程序员技术交流社区

标题: 关于接收键盘输入数据 [打印本页]

作者: 耳东    时间: 2015-8-4 12:51
标题: 关于接收键盘输入数据
在做四周年活动的第三题时,遇到了一点小问题,
public static void TongJi()
        {
                System.out.println("请输入字符串");
                Scanner in=new Scanner(System.in);
                String s=in.next();
                char[] arr=new char[1024*2];
                arr=s.toCharArray();
                int num1=0;
                int num2=0;
                int num3=0;
                int num4=0;
                for(int i=0;i<=arr.length-1;i++)
                {
                        if(Character.isLetter(arr[i])==true)
                        {
                                num1++;
                        }
                        else if(arr[i]==' ')
                        {
                                num2++;
                        }
                        else if(Character.isDigit(arr[i])==true)
                        {
                                num3++;
                        }
                        else
                        {
                                num4++;
                        }
                }
                System.out.println("英文字母的个数是:"+num1);
                System.out.println("空格的个数是:"+num2);
                System.out.println("数字的个数是:"+num3);
                System.out.println("其他字符的个数是:"+num4);
        }

这是之前写的代码,测试的时候,一旦输入了空格键,就无法正常计算个数,只能计算空格键前面的个数
无法统计到空格键后面的个数,找了好久原因,开始以为是判断空格的方式出错了,后来才意识是接收数据出了问题,
原来:
     Scanner in=new Scanner(System.in);
String s=in.next();
作者: 耳东    时间: 2015-8-4 12:53
是无法接受空格键的,想要接收空格键需要将上述代码改成      
Scanner in=new Scanner(System.in);
String s=in.nextLine();
--------------------
虽然有点傻,不过也算是完成了四周年活动第三题把。。。额




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2