
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,没完没了
求各位大侠帮帮忙,如何让循环结束? 展开
我看网上都是用字符串编的,我嫌太麻烦,这是我的思路
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,没完没了
求各位大侠帮帮忙,如何让循环结束? 展开
2个回答
展开全部
因为你用的是Scanner,你可以把打印I值的语句放在while循环的里面(I++)下面,I的值就出来了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询