Hi!
Ich habe ein Problem mit meinem Programm.
Dazu die relevante Codestelle:
Also mein Problem ist, dass jedesmal wenn ich die Methode prüfen aufrufe
und meine eingabe mit dem splittArray[2] übereinstimmt dieser Eintrag aus
der list in der alle Einträge stehen gelöscht wirden soll. Ich habe es wie ihr
auch im Code sehen könnt schon mit
probiert, was
aber zu keinem Ergebniss geführt hat.
Im Großen und Ganzen will ich ja eigentlich nur, dass jeder Eintrag aus der
list nur einmal abgefragt wird was ich damit realisieren wollte, dass ich den
betreffenden Eintrag nach der Abfrage einfach lösch. Das hat aber nicht geklappt!;(
Vielen Dank schon mal Voraus
MFG
programmierer12
Ich habe ein Problem mit meinem Programm.
Dazu die relevante Codestelle:
Java:
public static void mischen(){
zufall = (int) (Math.random()*index);
}
public static void fragen(){
mischen();
tfFrage.setText("");
tfAntwort.setText("");
tfFrage.repaint();
tfAntwort.repaint();
BufferedReader in;
try {
in = new BufferedReader(new FileReader(eingeloggt + "_Vokabeln.voc"));
String zeile = null;
while ((zeile = in.readLine()) != null) {
list.add(zeile);
index = list.size();
mischen();
listIndex = (String) list.get(zufall);
splittArray = listIndex.split("\\|");
tfFrage.setText(splittArray[0].toString());
}
} catch (IOException e1) {
e1.printStackTrace();
}
}
public static void pruefen(){
index = list.size();
do{
if(tfFrage.getText().isEmpty()){
fragen();
}
else{
if(tfAntwort.getText().isEmpty()) JOptionPane.showMessageDialog(null, "Füllen Sie alle Felder aus");
else{
if(tfAntwort.getText().equals(splittArray[1].toString())){
JOptionPane.showMessageDialog(null, "Richtig");
fragen();
}
else{
JOptionPane.showMessageDialog(null, "Falsch");
tfAntwort.setText("");
tfAntwort.repaint();
}
}
}
}while(tfFrage.getText().equals(""));
}
Also mein Problem ist, dass jedesmal wenn ich die Methode prüfen aufrufe
und meine eingabe mit dem splittArray[2] übereinstimmt dieser Eintrag aus
der list in der alle Einträge stehen gelöscht wirden soll. Ich habe es wie ihr
auch im Code sehen könnt schon mit
Code:
list.remove(zufall)
aber zu keinem Ergebniss geführt hat.
Im Großen und Ganzen will ich ja eigentlich nur, dass jeder Eintrag aus der
list nur einmal abgefragt wird was ich damit realisieren wollte, dass ich den
betreffenden Eintrag nach der Abfrage einfach lösch. Das hat aber nicht geklappt!;(
Vielen Dank schon mal Voraus
MFG
programmierer12