Hey ich habe eine Aufgabe bekommen, in der ich aus einem Textdokument Telefonnummern auslesen soll, die Duplikate entfernen und anschließend alles in ein neues Dokument schreiben soll. Das Auslesen der Datei funktioniert schonmal. Ich möchte jetzt jeden Wert innerhalb des Arrays miteinander mithilfe von equals vergleichen um Duplikate zu finden und diese anschließend auf 0 zu setzen. So kann ich hinterher mithilfe von der If-Anweisung alle Werte mit 0 beim Neu Schreiben auslassen.
Mein Problem ist nun das beim Testen der Werte untereinander eine NullPointerException bekomme und ich nicht ganz durchblicke was genau ich jetzt tun soll. hoffe mir kann jemand helfen.
Edit: Fehler ist NullPointerException in Zeile 31
Mein Problem ist nun das beim Testen der Werte untereinander eine NullPointerException bekomme und ich nicht ganz durchblicke was genau ich jetzt tun soll. hoffe mir kann jemand helfen.
Java:
//Name:
//Uebung 1 Aufgabe 2b
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
class nummer {
public static void main (String[]args) throws IOException{
//Den Text aus der Datei Zeilenweise auslesen
FileReader fr = new FileReader("Nr.txt");
BufferedReader br = new BufferedReader(fr);
String [] oldArr = new String [100];
String [] newArr = new String [100];
String zeile=br.readLine();
//Die Zeilen in einem Array speichern (und testweise abfragen)
int i=0;
while (zeile!=null){
oldArr[i]=zeile;
System.out.println(oldArr[i]);
zeile=br.readLine();
i++;
}
//Jede zeile untereinander miteinander vergleichen, und falls eine doppelt ist diese 0 setzen
int j=0;
for (j=0;j<=i;j++){
for (int k=0;k<=i;k++){
if (oldArr[j].equals(oldArr[k])){
oldArr[k]="0";
}
}
}
//testweise Ausgabe ob doppelte 0 gesetzt wurde
System.out.println();
for (int z=0;z<=20;z++){
System.out.println(oldArr[z]);
}
}
}
Edit: Fehler ist NullPointerException in Zeile 31
Zuletzt bearbeitet: