Problem mit Iterator

atomvirus

Mitglied
Mein Programm is soweit fertig nur hat mein Iterator nicht ganz hin, hab sicherlich auch einen Denkfehler...Kann mir irgendjemand erklären, wie hier die Iterator-methoden hasnext() und getnext() gesetzten werden müssen?!

Hier meine mein Code:
Java:
public class ArrayBasedStringList implements StringList {

	//Instanzvariable
	private String[] myStrings;
	private int pointer;
	private ArrayBasedStringList myArrayBasedStringList;
	private StringListIterator myStringListIterator;
	
	
	//Constructor
	public ArrayBasedStringList(){
		 myStrings = new String[3];
		 pointer = 0;
	}

		
	//hinzufügen
	public void add(String s) {
		
		if (this.isFull() == false){
			myStrings[pointer] = s;
			pointer++;
		}
		else{
			this.doubleMe();
			myStrings[pointer] = s;
			pointer++;
		}
				
	}

	//loeschen
	public void removeFirst() {
		
		myStrings[0] = myStrings[1];
		
		for(int i = 1; i < myStrings.length;i++){
			
			if (myStrings[i] != null)
				myStrings[i] = myStrings[i+1];		
			else
				break;
			
		}
		pointer--;

	}
	
	
	//array voll?
	public boolean isFull() {

		if (myStrings[myStrings.length-1] != null)
			return true;
		else
			return false;
				
	}

	//array doppelt so gross & inhalt kopieren
	public void doubleMe(){
		String[] temp_array = new String[myStrings.length * 2];
		
		for(int i = 0; i < myStrings.length;i++){
			
			temp_array[i] = myStrings[i];					
			
		}
		
		myStrings = new String[myStrings.length * 2];
		
		for(int i = 0; i < temp_array.length;i++){
			
			if (temp_array[i] != null)
				myStrings[i] = temp_array[i];					
			
		}
				
	}
	
	//Anzahl
	public int nrOfElems() {
		int zaehler = 0;
			for(int i = 0; i < myStrings.length;i++){
				
				if (myStrings[i] != null)
					zaehler++;
				else
					break;
				
			}
		
			return zaehler;
			
	}

	//gib Iterator
	public StringListIterator giveIterator() {
		return new MyIterator();
	}
	
		
	//innere Klasse fuer Iterator
	private class MyIterator implements StringListIterator {
		Integer current;
		MyIterator(){ 
			current = pointer;
		}
		
		
		public String getNext(){ //requires hasNext
			return null;
				
		}
		
		public boolean hasNext(){ 
			if (myStrings[current+1] != null){
				return true;
			}else{ return false;
			}
		}
		

	}

}

hoffe es kann mir jemand helfen ;)
 
Zuletzt bearbeitet von einem Moderator:

atomvirus

Mitglied
...Fehler muss im Zusammenhang zwischen der removeFirst() Methode und dem Interator liegen...
Bei meinem Testprogramm kommt folgende Exception:

Exception in thread "main" java.lang.NullPointerException
at LinkedStringList$MyIterator.getNext(LinkedStringList.java:82)
at Bsp02.main(Bsp02.java:38)

mein Testprogramm:
Java:
/*Bernhard Schnoell - 1020921, Tosch Maximilian 1020312  
 * "Listen von Zeichenreihen"
 */

//Klasse zum Testen
public class Bsp02 {

	public static void main(String[] args) {

		// LinkedStringList:
		String str = "test";
		LinkedStringList myLinkedStringList = new LinkedStringList(); // leere
																		// Liste

		for (int i = 0; i < 5; i++) {
			myLinkedStringList.add(str + i);
		}

		StringListIterator myStringListIterator = myLinkedStringList
				.giveIterator();
		if (myLinkedStringList.notEmpty()) {
			System.out.print("Ausgabe for Remove: ");
			do {
				System.out.println(myStringListIterator.getNext());
			} while (myStringListIterator.hasNext());

		}

		System.out.println("Anzahl der Elemente:");

		System.out.println(myLinkedStringList.nrOfElems());
		
		myLinkedStringList.removeFirst();
		
		if (myLinkedStringList.notEmpty()) {
			System.out.print("Ausgabe for Remove: ");
			do {
				System.out.println(myStringListIterator.getNext());
			} while (myStringListIterator.hasNext());

		}
		/*
		 * //ArrayBasedStringList: ArrayBasedStringList myArrayBasedStringList =
		 * new ArrayBasedStringList(); //leere Liste
		 * 
		 * for (int i=0; i<5; i++){ myArrayBasedStringList.add(str + i); }
		 * myArrayBasedStringList.removeFirst();
		 * System.out.println(myArrayBasedStringList.nrOfElems());
		 */
	}

}
 

AmunRa

Gesperrter Benutzer
getNext liefert zur zeit bei dir ja immer null zurück
da her kommt auch eine NPE



Edit: Was bitte ist jetzt schon wieder LinkedStringList ich dachte deine Klasse heist ArrayBasedStringList
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
W OOP problem mit iterator! -.- Java Basics - Anfänger-Themen 9
L Problem mit Iterator bzw. Sortierte Liste Java Basics - Anfänger-Themen 14
S iterator problem Java Basics - Anfänger-Themen 3
C Problem mit verschachteltem Iterator Java Basics - Anfänger-Themen 2
R Problem mit Iterator Java Basics - Anfänger-Themen 6
M Problem mit Iterator.remove() Java Basics - Anfänger-Themen 5
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
I WildFily - unterschiedliche Libs im Projekt verursachen Problem Java Basics - Anfänger-Themen 11
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
L Taschenrechner Problem Java Basics - Anfänger-Themen 4
I Applikationsserver (WildFly) - Zugriff auf Ressourcen.. Problem mit Pfade Java Basics - Anfänger-Themen 10
A ScheduledExecutorService problem Java Basics - Anfänger-Themen 7
marcelnedza Problem mit Weltzuweisung, JavaKarol Java Basics - Anfänger-Themen 13
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
M Erste Schritte Collatz Problem max int Java Basics - Anfänger-Themen 3
M Problem bei verschachtelter for-Schleife bei zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
frager2345 Problem mit Methode Java Basics - Anfänger-Themen 4
L Problem bei Rechnung mit Math.pow Java Basics - Anfänger-Themen 13
A Thread-Schreibe-Lese-Problem Java Basics - Anfänger-Themen 4
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
sserio BigInteger Problem Java Basics - Anfänger-Themen 4
JordenJost Taschenrechner problem Java Basics - Anfänger-Themen 5
K Problem mit "Random" Java Basics - Anfänger-Themen 5
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
xanxk Problem For-Schleife mit Charakter Java Basics - Anfänger-Themen 2
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
sserio Liste erstellt und ein Problem mit dem Index Java Basics - Anfänger-Themen 8
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
J Schleife Problem Java Basics - Anfänger-Themen 2
D Problem mit der Erkennung von \n Java Basics - Anfänger-Themen 2
milan123 das ist meine aufgabe ich hab das problem das bei mir Wenn ich die Richtung der Linien verändern will und drei davon sind richtig, verändere ich die 4 Java Basics - Anfänger-Themen 3
M Verständins Problem bei Aufgabe Java Basics - Anfänger-Themen 4
HeiTim Problem mit der Kommasetzung an der richtigen stelle Java Basics - Anfänger-Themen 59
Temsky34 Problem mit dem Code Java Basics - Anfänger-Themen 17
P Problem mit Calendar.getDisplayName() Java Basics - Anfänger-Themen 8
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
M Problem mit Klassenverständnis und Button Java Basics - Anfänger-Themen 8
EchtKeineAhnungManchmal hallo habe ein Problem mit einer Datei -> (Zugriff verweigert) Java Basics - Anfänger-Themen 4
H Problem mit Verzweigungen Java Basics - Anfänger-Themen 6
H Problem mit Rückgabewert Java Basics - Anfänger-Themen 7
josfe1234 JAVA FX problem Java Basics - Anfänger-Themen 3
A Code Problem Java Basics - Anfänger-Themen 6
Henri Problem von Typen Java Basics - Anfänger-Themen 7
J Problem mit "ArrayIndexOutOfBoundsException" Java Basics - Anfänger-Themen 11
K jackson Mapping - Problem mit Zeitzonen Java Basics - Anfänger-Themen 10
B Threads Problem mit mehreren Threads Java Basics - Anfänger-Themen 38
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
D Schleifen Problem Java Basics - Anfänger-Themen 2
H So viele Fehlermeldungen, dass ich nicht weiß wo das Problem ist. Java Basics - Anfänger-Themen 6
J JAVA-Problem blockiert MEDIATHEKVIEW Java Basics - Anfänger-Themen 13
T Problem mit Lehrzeichen und String bei einfacher Chiffre Java Basics - Anfänger-Themen 8
J extends Problem Java Basics - Anfänger-Themen 2
C Polymorphie-Problem Java Basics - Anfänger-Themen 3
Kalibru Problem bei Ausgabe von Objekt Java Basics - Anfänger-Themen 1
I Format Problem mit Wert - bekomme 0,10 anstatt 10,00 Java Basics - Anfänger-Themen 6
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
J Allgemeines Problem mit Klassen Java Basics - Anfänger-Themen 5
U Problem mit dem initialisieren meines Strings in einer Schleife Java Basics - Anfänger-Themen 5
amgadalghabra algorithmisches Problem Java Basics - Anfänger-Themen 19
J Traveling Salesman Problem [Arrays] Java Basics - Anfänger-Themen 9
R ArrayList Problem Java Basics - Anfänger-Themen 6
InfinityDE Problem mit Datenübergabe an Konstruktor Java Basics - Anfänger-Themen 7
C RegEx Problem Java Basics - Anfänger-Themen 4
J Anfänger TicTacToe, Problem bei Gewinnoption, sowohl Unentschieden Java Basics - Anfänger-Themen 8
E Taschenrechner GUI Problem mit Fehlerhandling Java Basics - Anfänger-Themen 6
M Input/Output Fallunterscheidung Problem Java Basics - Anfänger-Themen 17
P Problem beim Überschreiben einer vererbten Methode Java Basics - Anfänger-Themen 4
M Problem bei Ausgabe Java Basics - Anfänger-Themen 7
Splayfer Java Array Problem... Java Basics - Anfänger-Themen 2
G Problem bei der Ausgabe einer Main Claase Java Basics - Anfänger-Themen 7
F Problem mit KeyListener in kombination mit dem ActionListener Java Basics - Anfänger-Themen 4
G Subset sum problem mit Backtracking Java Basics - Anfänger-Themen 18
N Problem mit Scanner Java Basics - Anfänger-Themen 2
J Klassen Problem Java Basics - Anfänger-Themen 8
A Out.format problem. Java Basics - Anfänger-Themen 3
J Problem bei der Programmierung eines Tannenbaums Java Basics - Anfänger-Themen 9
A Array problem Java Basics - Anfänger-Themen 16
2 Taschenrechner mit GUI Problem bei der Berechnung Java Basics - Anfänger-Themen 8
W Remote Method Invocation RMI - Problem Java Basics - Anfänger-Themen 0
I Ich habe ein Problem Java Basics - Anfänger-Themen 3
A Problem bei returnen eines Wertes Java Basics - Anfänger-Themen 6
M Regex Erstellung Problem Java Basics - Anfänger-Themen 2
D Input/Output Problem bei der Benutzereingabe eines Befehls Java Basics - Anfänger-Themen 14
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
F Habe ein problem mit dem ActionListener Java Basics - Anfänger-Themen 3
C Regex-Problem Java Basics - Anfänger-Themen 4
J Problem beim vergleich von zwei Integer Java Basics - Anfänger-Themen 3
M Problem in der Modellierung Java Basics - Anfänger-Themen 20
W Wo ist das URL-Problem ? Java Basics - Anfänger-Themen 1
S Generics-Problem: Class, Class<?>, Class<Object> Java Basics - Anfänger-Themen 4
D FileWriter / FileReader Problem Java Basics - Anfänger-Themen 10
G Problem beim Speichern von Objekten in einer Datei Java Basics - Anfänger-Themen 7
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
J Problem mit Array: 2 Klassen Java Basics - Anfänger-Themen 2
S Collections funktionale Listen (ListNode<E>) review und problem beim clone Java Basics - Anfänger-Themen 0

Ähnliche Java Themen

Neue Themen


Oben