#java #joptionpane
#java #joptionpane
Вопрос:
Я пытаюсь создать программу, которая собирает 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");
}
}
Это должно выглядеть так.
Ответ №1:
Если все слова находятся в первой строке, то вам нужно будет использовать операцию разделения строки.
String[] lines = Ordtildikt.split(«n»);/каждая строка является элементом массива.
Однако, если вы пытаетесь повторить код для каждого слова, то ваш цикл for структурирован странно.
for (;i<4;i );
Вы должны стараться избегать создания циклов без фигурных скобок «{ … }» потому что это трудно читать. Когда вы пишете цикл, который заканчивается точкой с запятой «;», он указывает, что это конец кода цикла, и будет выполняться через него и выполнять 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;
}
}