题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

佛系编码i 2015-05-25 11:08:35
其他的都正常就是输入空格的时候就停止了 就不往里面录入了,求罩啊

Scanner input = new Scanner(Syatem.in);

int num=0;//数字
int s=0;//英文;
int kong=0;//空格
int fu=0;//其他

System.out.println("请输入一行字符:");
str=input.next();
//循环判断
for(int i=0;i<str.length();i++){

char c=str.charAt(i);
if(c==' '){
kong++;
}else if((c>='a'&&c<='z')||(c>='A'&&c<='Z')){//字母
s++;
}else if(c>='0'&&c<='9'){//数字
num++;
}else{//其他
fu++;
}

}
System.out.println("其中数字有:"+num);
System.out.println("其中英文字母有:"+s);
System.out.println("其中空格有:"+kong);
System.out.println("其他字符个数是:"+fu);
...全文
1539 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
佛系编码i 2015-06-19
  • 打赏
  • 举报
回复
引用 2 楼 习惯的看着别人幸福的回复:
使用input.nextLine()方法,读取一行数据,next()方法会将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符,而nextLine()返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
佛系编码i 2015-06-15
  • 打赏
  • 举报
回复
引用 2 楼 习惯的看着别人幸福的回复:
使用input.nextLine()方法,读取一行数据,next()方法会将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符,而nextLine()返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
代码与酒 2015-05-25
  • 打赏
  • 举报
回复
使用input.nextLine()方法,读取一行数据,next()方法会将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符,而nextLine()返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
傻傻de点点 2015-05-25
  • 打赏
  • 举报
回复
str=input.next(); 改成str=input.nextLine(); 即可

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧