Так что это код, и он предназначен для случайного слова из списка, пользователь вводит значение, которое находится во внешнем текстовом файле, и если оно правильно, оно удаляет слово из в противном случае он сохранит это слово и добавит его в список пропущенных слов. Проблема в том, что слова не удаляются из списка, и я не могу напечатать ArrayList. Может ли кто-нибудь помочь мне с этой проблемой? Кроме того, есть ли какие-либо улучшения, которые я могу внести в код? Спасибо вам за вашу помощь.Программа обучения Vocab не работает должным образом
import java.io.*;
import java.util.*;
public class WordList1 {
public static void main(String[] args) throws IOException{
boolean fart = true;
FileReader fr = new FileReader("WL1.txt");
BufferedReader br = new BufferedReader(fr);
Scanner console = new Scanner(System.in);
ArrayList wordArray = new ArrayList();
ArrayList missedWords = new ArrayList();
String input, stringArray[] = new String[2], answer;
while((input=br.readLine())!=null){
stringArray = input.split(" ");
wordArray.add(stringArray);
}
while(fart){
stringArray = (String[]) wordArray.get((int)(Math.random()*(wordArray.size())));
System.out.println(stringArray[0]);
answer = console.nextLine();
if(answer.equalsIgnoreCase(stringArray[1])){
System.out.println("CORRECT");
wordArray.remove(stringArray[1]);
}
if(!answer.equalsIgnoreCase(stringArray[1])){
System.out.println("INCORRECT, " + stringArray[1]);
missedWords.add(stringArray[0]);
}
if(answer.equalsIgnoreCase("escape")){
fart = false;
System.out.println(missedWords);
}
if(answer.equalsIgnoreCase("print"))
System.out.println(wordArray);
}
}
}
программа, кажется, страдает от немного метеоризма .. – Oren
Я думаю, что 'crapOut' это лучше, чем имя переменной' fart'. :) – RustyTheBoyRobot