ausgabe.get(ausgabe.size() - 1)
ArrayList ausgabe = new ArrayList();
public ArrayList filtereZahlen(int eineZahl) {
int letztesElement = ausgabe.size() -1;
if (eineZahl < 0) {
} else if (ausgabe.get(ausgabe.size() - 1) == 0 && eineZahl == 0) {
} else {
ausgabe.add(eineZahl);
System.out.println(ausgabe.size() - 1);
}
System.out.println("\n$ java FilterSamples\n" + ausgabe);
return ausgabe;
}
ausgabe.get(ausgabe.size() - 1) == 0
Du solltest der ArrayList auch den Datentyp mitgeben, also so:ArrayList ausgabe = new ArrayList();
ArrayList<Integer> ausgabe = new ArrayList<>();
Ah okay. Sieht schonmal gut aus. Allerding ist jetzt wie du gesagt hattest, die IndexOutOfBoundsException da. Aber die kann ich einfach catchen oder?Du solltest der ArrayList auch den Datentyp mitgeben, also so:
Java:ArrayList<Integer> ausgabe = new ArrayList<>();
Könntest du, aber sinnvoller wäre es präventiv zu prüfen, ob Elemente enthalten sindAber die kann ich einfach catchen oder?
haha, naja die soll konsolen eingaben wie: 1 2 3 0 0 -1 -1 3 4 -1 -1 -1, auf: 1 2 3 0 3 4 kürzen. Ich werd die Methode deutlicher machen ^^. Bin ja noch Anfänger
public class IntList {
private ArrayList<Integer> list = new ArrayList<>();
public IntList(int... values) {
for (int value : values) {
list.add(value);
}
}
public ArrayList<Integer> getMultiplied(int multiplier) {
ArrayList<Integer> multipliedList = new ArrayList<>();
for (int value : list) {
multipliedList.add(value * multiplier);
}
return multipliedList;
}
public static void main(String[] args) {
IntList list = new IntList(1, 2, 3);
System.out.println(list.getMultiplied(4));
}
}
[4, 8, 12]
public class test {
public static List<Integer> filter(List<Integer> list) {
List<Integer> newList = new ArrayList<>();
int lastElement = -1;
for(int element:list) {
if ((element == 0 && lastElement != element) || element > 0) {
newList.add(element);
}
lastElement = element;
}
return newList;
}
public static void main(String [] args) {
List<Integer> liste = Arrays.asList(1, 2, 3, 0, 0, -1, -1, 3, 4, -1, -1, -1);
System.out.println(filter(liste));
}
}