Java题,输入一行文本,输出每个单词及单词数目

假设文本行中只含字母和空格,每个单词间由空格分隔我看网上都是用字符串编的,我嫌太麻烦,这是我的思路importjava.util.*;publicclassWords{p... 假设文本行中只含字母和空格,每个单词间由空格分隔
我看网上都是用字符串编的,我嫌太麻烦,这是我的思路
import java.util.*;
public class Words {

public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int i = 0;
System.out.println("Enter the sentence!");
while(in.hasNext()){
String word = in.next();
System.out.println(word);
i++;
}
System.out.println(i);
}
}
就是每读一个单词马上打出来。
但是出现问题,while循环结束的条件似乎永远达不到,i的值永远输出不了
比如我输入I love you
结果为
I
love
you

i输出不出来,这时如果我再敲一个单词a,程序也会在输出一个a,没完没了
求各位大侠帮帮忙,如何让循环结束?
展开
 我来答
百度网友cdacbe5
2010-09-24 · TA获得超过1062个赞
知道小有建树答主
回答量:653
采纳率:0%
帮助的人:370万
展开全部
因为你用的是Scanner,你可以把打印I值的语句放在while循环的里面(I++)下面,I的值就出来了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
33俩俩
2010-09-24
知道答主
回答量:29
采纳率:0%
帮助的人:14.4万
展开全部
很简单
可以考虑直接用一个循环(根据字符串的长度),然后用一个字符串记录单词,遇到空格则输出这个字符串即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式