【发布时间】:2013-11-26 07:04:30
【问题描述】:
我需要计算字符串中的单词。对于你们中的许多人来说,这似乎很简单,但是从我在类似问题中读到的内容中,人们说要使用数组,但我宁愿不使用。由于我的字符串来自输入文件并且程序无法硬连线到特定文件,因此它使我的程序复杂化而不是帮助。
到目前为止我有这个:
while(input.hasNext())
{
String sentences = input.nextLine();
int countWords;
char c = " ";
for (countWords = 0; countWords < sentences.length(); countWords++)
{
if (input.hasNext(c))
countWords++;
}
System.out.println(sentences);
System.out.println(countWords);
}
问题是我在这里最终计算了字符串中的字符数量。我认为它会将 char c 视为分隔符。我也尝试过使用 String c 代替 input.hasNext 但编译器告诉我:
Program04.java:39: incompatible types
found : java.lang.String[]
required: java.lang.String
String token = sentences.split(delim);
我已经从程序中删除了 .split 方法。 如何在不使用带有扫描文件的字符串数组的情况下分隔(这是正确的词吗?)?
【问题讨论】:
-
-.- 我不是说这个词是一个数组。我是说我不想使用字符串数组。
-
坦率地说,你不使用数组的原因听起来像:我不能去电影院,因为我有一辆白色汽车,而且我不能将我的白色汽车硬连接到电影院。这没有任何意义。使用数组不会强迫你硬连线任何东西。
标签: java string count split words