基本上我只需要将句子的前十个单词保存到数组中。我从我的代码中知道,如果大于10,则所有单词都将被保存,但是我只循环遍历10次,因此它停止了。但是,如果该句子少于10个单词,则需要用一个空字符串填充它。因此,如果它有10个或更多的单词,我可以使其正常工作。但是,如果少于10个字,我将无法正常工作。有谁知道使其工作的方法吗?我必须具有10的数组大小。
String[] tempString = new String[10];
tempString = sentence.replaceAll("[^a-zA-Z ]", "").toLowerCase().split("\\s+");
for(int i = 0; i < tempString.length; i++)
{
System.out.println(tempString[i]);
}
编辑:
所以从本质上讲,如果我输入以下句子:“一二三四有五六七七八有九十”,它会起作用。但是,如果我输入“ 1、2、3”,则会给我ArrayOutofBoundsException。我需要其他7个索引填充的是一个空字符串。
您可以使用以下内容:
for(int i = 0; i < 10; i++)
{
if (i < tempString.length)
System.out.println(tempString[i]);
else
System.out.println("");
}
由于需要打印10次,因此需要重复10次。每次迭代都检查您是否仍在拆分字符串数组的范围内。如果不是,请按照需要在其余空间中填充空白。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句