Hallo zusammen.
Habe eine Fehlermeldung lediglich btr. Einlesen der 20 Zahlen. Dieser Teil schein gemäss meiner Einschätzung jedoch richtig zu sein - finde somit den Fehler nicht.
Der komplexere Part ist dafür zutreffend.
Danke im Voraus für jede Anmerkung.
Danke Euch
package de.codegym.task.task07.task0713;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Javarella spielen
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int anzZahlen = 20;
ArrayList<Integer> hauptListe = new ArrayList<>();
ArrayList<Integer> teilerDrei = new ArrayList<>();
ArrayList<Integer> teilerZwei = new ArrayList<>();
ArrayList<Integer> uebrigeZahlen = new ArrayList<>();
for (int i = 0; i < anzZahlen; i += 1) {
int nZahlen = Integer.parseInt(br.readLine());
hauptListe.add(0, nZahlen);
}
for (int i = 0; i < hauptListe.size(); i += 1) {
if (hauptListe.get(i) % 3 != 0 && hauptListe.get(i) % 2 != 0) {
uebrigeZahlen.add(0, hauptListe.get(i));
hauptListe.remove(i);
}
}
for (int i = 0; i < hauptListe.size(); i += 1) {
if (hauptListe.get(i) % 3 == 0) {
if (hauptListe.get(i) % 2 == 0) {
teilerDrei.add(0, hauptListe.get(i));
teilerZwei.add(0, hauptListe.get(i));
} else {
teilerDrei.add(0, hauptListe.get(i));
}
} else {
teilerZwei.add(0, hauptListe.get(i));
}
}
listeAusdrucken(teilerDrei);
listeAusdrucken(teilerZwei);
listeAusdrucken(uebrigeZahlen);
}
public static void listeAusdrucken(List<Integer> liste) {
for (Integer elemente : liste) {
System.out.println(elemente);
}
}
}