我正在尝试创建一个收集16个单词和4行部分的程序;提示? 这是我的代码; 我已经解决了所有问题,但我不能将它划分为4行。
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Kontroll1 {
public static ArrayList<String> Words = new ArrayList<String>();
public void Registerer(String Ordtildikt){
int i = 0;
for (;i<4;i++);
Words.add(Ordtildikt);
Words.add("\n");
}
}
应该是这样的。
答案 0 :(得分:0)
如果所有单词都在第一个字符串中,那么您需要使用字符串拆分操作。
String [] lines = Ordtildikt.split(&#34; \ n&#34;); /每行是数组的一个元素。
但是,如果你试图为每个单词重复代码,那么你的for循环结构很奇怪。
for (;i<4;i++);
你应该尽量避免在没有大括号的情况下制作循环&#34; {...}&#34;因为很难阅读当你写一个以分号结尾的循环&#34 ;;&#34;它指定这是循环代码的结束,并将运行它并执行0实际代码行。
for(int i = 0; i < 4; i++){
...// code to loop here
}
但是,当你有一个循环时,它会重复一组代码,因此你要将相同的单词添加到数组中,这看起来并不像你想要做的那样。你想要做的是在方法之外有一个计数器。
public static ArrayList<String> Words = new ArrayList<String>();
public int wordCount = 0;
添加每个单词后递增计数器,如果它可以被4整除,则添加一个新行。
public void Registerer(String Ordtildikt){
wordCount++;
Words.add(Ordtildikt);
if(wordCount%4 == 0){
Words.add("\n");
wordCount = 0;
}
}