Set.contains() auch false wenn value == null?

Status
Nicht offen für weitere Antworten.

txd67689

Mitglied
Hallo zusammen,

ich staune gerade beim Vergleich zweier propertiesFiles.
Wenn man das erste Set durchiteriert wird mit <Key nicht im zweiten Set> abgebrochen, obwohl der Key im zweiten Set ist (Value ist aber null).

Kann man die Api so verstehen, dass contains() auch false zurückgibt, wenn der Key vorhanden ist, aber der Wert == null?
Returns true if this set contains the specified element. More formally, returns true if and only if this set contains an element e such that (o==null ? e==null : o.equals(e)).
 

txd67689

Mitglied
merci, aber diese hier funktioniert nun :)
Code:
@Test
	public void TestStart() {
		
		boolean failed = false;
		
		Set set = labelsDe.keySet();
		Iterator it = set.iterator();
		Set set2 = labelsIta.keySet();

		
		while (it.hasNext()) {
			String k = (String) it.next();
			String v = (String) labelsIta.get(k);
			
			if (!set2.contains(k)  ){
				System.out.println("in ita fehlt key : " + k);
				failed = true;
				
			} else if (v.length() == 0){
				System.out.println("in ita key nicht übersetzt: " + k);
				failed = true;
			}
			
		}
		
		if (failed){
			fail();
		}
	}
 

dergrüne

Aktives Mitglied
Weiß nicht genau ob das so in Java auch ist (könnte ich mir aber vorstellen) in c++ ist es auf jedenfall so das null auch false bedeutet, also if(null) == if(false) == if(0) ist für c++ alles das selbe. Und ob contains jetzt ein false, eine 0 oder ein null zurück gibt, sollte für das if alles false sein.
 

Wildcard

Top Contributor
Weiß nicht genau ob das so in Java auch ist (könnte ich mir aber vorstellen) in c++ ist es auf jedenfall so das null auch false bedeutet, also if(null) == if(false) == if(0) ist für c++ alles das selbe. Und ob contains jetzt ein false, eine 0 oder ein null zurück gibt, sollte für das if alles false sein.
In Java ist das nicht so.
contains auf einer HashTable (Properties erbt davon) ist das gleiche wie containsValue. Also etwas völlig anderes als containsKey ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Collection - contains-Methode überschreiben (anonyme innere Klasse) Allgemeine Java-Themen 4
G Override String.contains Allgemeine Java-Themen 2
T Collections TreeSet.contains ruft nicht .equals? Allgemeine Java-Themen 4
H ArrayList.contains() Allgemeine Java-Themen 2
C Komisches Verhalten zwischen Set und List bei contains Allgemeine Java-Themen 6
B Arraylist.contains(Klasse) möglich? Allgemeine Java-Themen 19
K Collection.contains()/retainAll() mit Referenzgleichheit statt equals()? Allgemeine Java-Themen 2
1 String mit contains vergleichen (ignore case) Allgemeine Java-Themen 2
J Array[][] contains Array[][] ? Allgemeine Java-Themen 4
G drawPolygon() vs. contains() -> komisch! Allgemeine Java-Themen 14
I Properties.contains("Hell*orld"); Allgemeine Java-Themen 14
N contains(.) liefert nicht erwartetes Ergebnis Allgemeine Java-Themen 3
B String.contains() --- Java1.3 Allgemeine Java-Themen 2
kodela StatusBar-Anzeigen auch in Log-Datei ausgeben Allgemeine Java-Themen 3
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
S HTML einer Webseite 1:1 so bekommen wie es auch der Browser anzeigt? Allgemeine Java-Themen 14
S Mit Methoden kann man definieren für was <T> steht. Geht das auch irgendwie für Variablen? Allgemeine Java-Themen 12
F 2 JsonArray vergleichen, geht es auch einfacher ? Allgemeine Java-Themen 3
N nicht static und auch nicht new Allgemeine Java-Themen 3
M Openjdk - gibt es auch eine Openjre? Allgemeine Java-Themen 7
S Java.exe exestiert, aber irgendwie auch nicht Allgemeine Java-Themen 11
J Eigene Api erstellen und dann auch verwenden - Ordnerstruktur Allgemeine Java-Themen 1
X Datentypen Byte geht nicht höher als 126 auch nicht mit casten? Allgemeine Java-Themen 22
G Erste Schritte Aufgabe - Geht das auch schneller ? Allgemeine Java-Themen 7
Thallius Neuen Prozess starten, der auch nach Beedingung des Starter-Prozesses weiterläuft? Allgemeine Java-Themen 5
L Variable auch in der function verfügbar machen? Allgemeine Java-Themen 4
Zettelkasten JAR-Datei kann bei Freund auch nicht mit CMD ausgeführt werden Allgemeine Java-Themen 4
A Classpath ResourceBundle Problem bzgl. Pfade bzw. Pfade (auch in Eclipse) generell? Allgemeine Java-Themen 7
T auch bei neustart laufen... Allgemeine Java-Themen 3
i<3java [Groovy/Grails](oder auch java) Mögliche Performance Probleme bei Mailversendung Allgemeine Java-Themen 2
TheDarkRose Subversion .class Dateien auch commiten? Allgemeine Java-Themen 3
C Methodenkopf: Zu was wenns auch ohne geht? Allgemeine Java-Themen 3
S Daten extrahieren aus Excel Dateien (auch 2k7) Allgemeine Java-Themen 4
S Map die die auch ein getKey(value) erlaubt? Allgemeine Java-Themen 2
ARadauer mit keylistener hören auch wenn frame nicht den focus hat Allgemeine Java-Themen 2
G mit Apache-Jakarta-POI auch Graphiken aus Excel einlesen? Allgemeine Java-Themen 3
L Java app läuft under win xp, automatisch auch unter vista32 Allgemeine Java-Themen 14
P JTextField textfarbe schwarz auch wenn JTF deaktiviert ist Allgemeine Java-Themen 4
P Java 6 kompilierte programme laufen die auch unter JRE 1.4.x Allgemeine Java-Themen 43
M Objekte Dauerhaft speichern und evtl. auch ändern? Allgemeine Java-Themen 6
Chris_1980 Geht das nicht auch einfacher (Arcanoid Multiball) Allgemeine Java-Themen 2
D Geht es auch schneller doppelte Einträge zu löschen? Allgemeine Java-Themen 23
S Java Compiler spinnt oder auch nicht ? Allgemeine Java-Themen 5
M Datei immer auslesen können, auch im JAR Allgemeine Java-Themen 7
D mails auch als fax verschicken ? ? ? Allgemeine Java-Themen 2
R setDragEnabled auch für Applet Allgemeine Java-Themen 4
R DropTarget auch für Applet selbst Allgemeine Java-Themen 2
K Registry-Zugriff auch einfacher? (ORACLE_HOME auslesen) Allgemeine Java-Themen 3
A Auch so können Java-Anwendungen aussehen Allgemeine Java-Themen 18
1 Eine Flash-Seite auch in Java realisierbar ? Allgemeine Java-Themen 2
N JRE kaputt, auch nach Neuinstallation Allgemeine Java-Themen 7
H Vererbung auch ohne erzeugung einer Instanz möglich? Allgemeine Java-Themen 3
A Verzeichnis auflisten - auch innerhalb eines Jars Allgemeine Java-Themen 6
G Warum einfach wenns kompliziert auch geht? Allgemeine Java-Themen 12
B Java ist auch eine Insel Allgemeine Java-Themen 10
G ChangeListener auch für TextField? Allgemeine Java-Themen 4
N Eingabe wird immer als "false" ausgegeben Allgemeine Java-Themen 6
C Variablen == gibt immer false aus. Allgemeine Java-Themen 2
M True or false Verständnis Allgemeine Java-Themen 5
M JButton setEnabled(false) seltsames Ereignis Allgemeine Java-Themen 1
R JNI if abfrage gibt immer false zurück. Allgemeine Java-Themen 7
S HashMap containsKey liefert immer false zurück Allgemeine Java-Themen 15
X JTable mit Checkboxen -> Setzen (true/false) der Checkboxen per Mouseklick... Allgemeine Java-Themen 3
S Fenster "verschwindet" nicht, trotz setVisible(false); Allgemeine Java-Themen 22
D Wie fragt man Booleans auf true oder false ab? Allgemeine Java-Themen 18
H ganze zahl true / false Allgemeine Java-Themen 3
S aFile.delete() liefert false - Gründe ? Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben