Iteratoren funktionieren nicht

Status
Nicht offen für weitere Antworten.

Hutmacher

Bekanntes Mitglied
Habe mir mal, nachdem ich in einem Buch über Vector, Hashtable etc. gelesen habe (auf der Basis vom JDK 1.4), just4try versucht, eine Testdatabase aufzubauen, die ich quasi durchsuchen kann. Diese nimmt hier nur Zahlen auf.
Das ist meine Klasse SimpleDatabase:
Java:
class SimpleDatabase
{
	private Vector data; //Quasi die Auflistung
	
    //Konstruktor
	SimpleDatabase(int number)
	{
		data.add(number);
	}
	
    //Hinzufüge-Methode
	public void add(int number)
	{
		data.add(number);
	}

    /**
     * Durchsucht die Database nach einer Nummer. Ist diese vorhanden, 
     * wird true zurückgegeben, ansonsten false.
     */
	public boolean suchen(int number)
	{
		boolean result = false;
		
		Iterator it = data.iterator();
		
		while (it.hasNext())
		{
			if ((Integer)it.next() == number)
			{
				result = true;
			}
		}
		
		return result;
	}
}
[Ob jetzt Iterator oder Enumeration ist ja an dieser Stelle wayne]

Wenn ich jetzt aber in einer main-Methode
Java:
SimpleDatabase db = new SimpleDatabase(20);
		db.add(30); db.add(11); db.add(15); db.add(88);
		System.out.print(db.suchen(111)); //=> false
z.B. schreibe, bekomme ich in Zeile 14 & beim Konstruktoraufruf selbst NullPointerExceptions.

Aber wie kann denn da ein Nullverweis sein? :bahnhof:

So wie im Buch beschrieben, sollte der Code doch funktionieren …
 
Zuletzt bearbeitet:

André Uhres

Top Contributor
Java:
    SimpleDatabase(int number)
    {
        data = new Vector();//<------------------------------------------
        data.add(number);
    }
 

MarcB

Bekanntes Mitglied
Dein Vector ist nicht instanziiert. Zuerst musst du im Konstruktor
data = new Vector();

aufrufen.

In deiner suchen Funktion weisst du der Variable "result" nicht das Ergebnis deines Vergleichs zu (Sondern der nirgendwo deklarierten Variable "ret")
 

Hutmacher

Bekanntes Mitglied
Ah, danke. Daran lag es also.

Ja, sowas passiert dann, wenn ich meine Variablen kurzfristig ohne STRG+F umbenenne …


Im Übrigen erscheinen in meinem Code in Eclipse Hinweise (z.B. beim Iteratorenbeschaffen in Zeile 25):
"Iterator is a raw type. References to generic type Iterator<E> should be parameterized"

Davon stand in dem Buch auch nichts … was hat das konkret zu bedeuten?
 
G

Gelöschtes Mitglied 5909

Gast
dass du doch kein Java 1.4 verwendest sondern 1.5 oder 1.6 und du Generics verwenden solltest.
Vectot<Integer> data = new Vector<Integer>();

-> dann musst du nicht mehr casten beim auslesen

Iterator<Integer> it = data.iterator();

...

Integer integer = it.next(); // stat (Integer) it.next();

Der vorteil ist außerdem Typsicherheit

und Objekte vergleicht man mit equals. Bei den primitiven Wrapper Klassen ist dies eine außname wegen AUtoboxing,
aber it.next().intValue() == number finde ich trotzdem besser
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Frage zu Iteratoren Java Basics - Anfänger-Themen 2
walker23m C++ Listen iteratoren in Java umwandeln Java Basics - Anfänger-Themen 3
J Polymorphie Iteratoren statt Collections Java Basics - Anfänger-Themen 13
0x7F800000 fail-fast Iteratoren nerven gewaltig Java Basics - Anfänger-Themen 18
B Datenstrukturen & Algorithmen => Iteratoren Java Basics - Anfänger-Themen 7
F Was sind Iteratoren ? Java Basics - Anfänger-Themen 9
Dimax RegEx funktionieren nicht Java Basics - Anfänger-Themen 7
B Polymorphie Warum funktionieren polymorphe Referenzvariablen bei überschriebenen Methoden und bei nicht überschriebenen nicht? Java Basics - Anfänger-Themen 3
B Wie funktionieren diese Methoden in diesem Sortierverfahren genau? Java Basics - Anfänger-Themen 2
H Threads funktionieren nicht Java Basics - Anfänger-Themen 4
C GUI- Scrollpane will nicht funktionieren Java Basics - Anfänger-Themen 2
T Klassen wie funktionieren Streams, warum bekomme ich int zurück? Java Basics - Anfänger-Themen 2
F Threads funktionieren auf JPanel nicht Java Basics - Anfänger-Themen 1
M Buttons funktionieren nicht Java Basics - Anfänger-Themen 4
K Compiler-Fehler Programme funktionieren nicht mehr Java Basics - Anfänger-Themen 5
C Erste Schritte Math.sin und Co. funktionieren nicht Java Basics - Anfänger-Themen 5
K Get-Methode will nicht funktionieren Java Basics - Anfänger-Themen 6
M IOTools funktionieren nicht Java Basics - Anfänger-Themen 14
Java-Insel Methoden FileWriter Methoden funktionieren nicht Java Basics - Anfänger-Themen 20
K Threads Nur 2 von 3 Threads funktionieren Java Basics - Anfänger-Themen 8
J Threads funktionieren nicht Java Basics - Anfänger-Themen 10
J Quartz Scheduler beispiele funktionieren nicht Java Basics - Anfänger-Themen 6
S Actionlistener funktionieren nicht in der .jar Java Basics - Anfänger-Themen 9
B Java und Javac funktionieren nicht - bitte hilfe Java Basics - Anfänger-Themen 5
P Datentypen Warum würde dieses Beispiel nicht funktionieren? Java Basics - Anfänger-Themen 6
F Applications funktionieren grundsätzlich nicht. Java Basics - Anfänger-Themen 4
S Schleife möchte nicht funktionieren Java Basics - Anfänger-Themen 5
J Window-Listener funktionieren nicht Java Basics - Anfänger-Themen 7
apple987123 JAR Files Funktionieren nicht Java Basics - Anfänger-Themen 6
P OOP Getter&Setter Methoden funktionieren nicht Java Basics - Anfänger-Themen 7
T Probleme bei einen Stack der über drei Dateien funktionieren soll Java Basics - Anfänger-Themen 5
K Buttons Funktionieren Nicht!!! Java Basics - Anfänger-Themen 8
G Java-Frames funktionieren nach Neuinstallation nicht mehr. Java Basics - Anfänger-Themen 3
hdi bilder funktionieren im jar archiv nicht. Java Basics - Anfänger-Themen 3
T Warum kann Hashtable get Methode nicht funktionieren? Java Basics - Anfänger-Themen 3
T Methoden funktionieren nicht Java Basics - Anfänger-Themen 5
D Wie funktionieren FileReader Java Basics - Anfänger-Themen 6
B in der .Jar funktionieren nicht alle Funktionen Java Basics - Anfänger-Themen 18
megachucky Action-/Change Listener funktionieren nicht. Java Basics - Anfänger-Themen 2
T Pakete und "-cp_ funktionieren net zusammen Java Basics - Anfänger-Themen 2
N Int to String will nicht funktionieren Java Basics - Anfänger-Themen 14
G Methodenaufrufe funktionieren nicht Java Basics - Anfänger-Themen 2
M Arrays clonen mit clone() scheint nicht zu funktionieren Java Basics - Anfänger-Themen 4
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
D Regex greift nicht richtig Java Basics - Anfänger-Themen 4
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
K TicTacToe belegtes feld nicht neu besetzbar Java Basics - Anfänger-Themen 1
K TicTacToe belegtes Feld nicht neu besetzbar Java Basics - Anfänger-Themen 3
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
G Mit jPackage erstellte EXE funktioniert nicht Java Basics - Anfänger-Themen 2
N BMI Rechner Was haltet ihr von dem Code habt ihr Verbesserungsvorschläge weil design teschnisch ist das nicht das geilste würde das gerne überarbeiten Java Basics - Anfänger-Themen 12
G Robot funktioniert nicht bei SelectionListener Java Basics - Anfänger-Themen 6
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
J jar Befehl wird nicht erkannt Java Basics - Anfänger-Themen 7
missy72 Erste Schritte (nicht) Deterministischer endlicher Automat Java Basics - Anfänger-Themen 9
T Getter/Setter - wie sieht ein Setter aus? Und wie nicht? Java Basics - Anfänger-Themen 34
T catch(InputMismatchException) wird nicht ausgefürt/erkannt Java Basics - Anfänger-Themen 12
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
P Netbeans installation geht nicht Java Basics - Anfänger-Themen 26
R RegEx funktioniert nicht Java Basics - Anfänger-Themen 14
T HashMap Lsite gibt die sachen nicht aus wie gewollt. Java Basics - Anfänger-Themen 3
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
S 2 Reihen ratio-btn, eine Reihe funktioniert andere nicht Java Basics - Anfänger-Themen 4
T scanner nicht erkannt Java Basics - Anfänger-Themen 3
monsterherz Punkt Notation funktioniert nicht Java Basics - Anfänger-Themen 4
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
monsterherz einfache Methode mit Fehler den ich nicht finde Java Basics - Anfänger-Themen 21
monsterherz if / else if mit Fehler den ich leider nicht finde Java Basics - Anfänger-Themen 11
D Jar Datei startet unter Linux nicht Java Basics - Anfänger-Themen 3
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
M Konstruktor-Aufruf im Konstruktor, aber nicht am Anfang? Java Basics - Anfänger-Themen 4
G Variable aktualisiert sich nicht in rekursiver Methode Java Basics - Anfänger-Themen 4
Darkherobrine9 Import klappt nicht Java Basics - Anfänger-Themen 7
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
R Compiler-Fehler Variable wird nicht gefunden bzw. erkannt? Java Basics - Anfänger-Themen 2
_so_far_away_ Inventarisierungssystem brauche switch Cases und weiß nicht, wie ich e implementieren muss Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben