Array in einem Set finden

Status
Nicht offen für weitere Antworten.

drinkingJava

Mitglied
Hallo liebe Leute,

wie kann ich einen Set<String[]> nach einem bestimmten Array möglichst effizient durchsuchen?
Wie ich soeben bemerkt habe ist es nicht möglich die contains-Methode zu benutzen.

hier noch ein kurzes Code Bespiel, um zu verdeutlichen was ich meine ^^:
Java:
String[] array1 = new String[] {"test"};
Set set1 = new HashSet();
set1.add(array1);

set1.contains(new String[]{"test"}); // funktioniert leider nicht =( , da intern die equals Methode angewendet wird, und nicht Arrays.equals
[/Java]
 
S

SlaterB

Gast
das effizienteste wäre, nicht nach einem Array zu suchen ;)

von einen Array kannst du nämlich nicht den HashCode beeinflussen, und der ist nunmal nicht vom Inhalt abhängig,
equals genauso,

du brauchst z.B. ein Wrapper-Objekt ArrayHolder,
mit einem Array drin + eigener HashCode + equals-Implementierung, die sich auf den Inhalt des Arrays bezieht

ein Beispiel gibts dafür sogar schon in der API: ArrayList ;)

edit:
der andere Weg wäre, ein eigenes Set zu schreiben bzw. ein vorhandenes so weit zu modifizieren,
dass es Arrays.equals() usw. benutzt, aber nicht ratsam
 
M

maki

Gast
Nun, da die equals Methode nicht so funzt wie sie sollte, wird dir auch klar sein, dass es gar keinen Sinn macht ein [c]Set<String[]>[/c] zu verwenden, oder? ;)

Persöhnlich halte ich nix davon primitive Datenstrukturen wie Arrays in Collections zu verwenden, es gibt ein paar Fälle in denen es nicht anders geht bzw. Sinn macht, deiner ist aber keiner davon ;)
 
M

maki

Gast
Klar kann man [c]Set<List>[/c] verwenden, aber manchmal macht ein eigener DatenTyp/Klasse mehr Sinn ;)
 

drinkingJava

Mitglied
Ja, hatte auch überlegt eine eigene Klasse zu implementieren, aber da das ganze eine Server-Client Webapplikation ist, und ich nicht extra eine eigene Commons-Bibliothek für Serverseite und Clientseite erstellen will (und auch keine Lust habe), benutze ich jetzt die ArrayList =).
 
M

maki

Gast
Objektorientiert wäre imho trotzdem sauberer, bei Client/Serveranwendungen ist es das normalste der Welt gemeinsam genutzte Klasse in einem Extra Jar beiden zur Verfügung zu stellen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B in einem Array den nächstgelegenen Wert zu einem eingabewert finden Java Basics - Anfänger-Themen 8
J Inhalt in einem Text-File finden und in ein Array schreiben Java Basics - Anfänger-Themen 5
B Datentypen Zeichen in einem Array finden Java Basics - Anfänger-Themen 12
S Primzahl in einem Array finden Java Basics - Anfänger-Themen 21
A 6. Element aus einem Array zurückgeben Java Basics - Anfänger-Themen 1
A Was bedeutet bei einem Array "int a [MAX][MAX];", Java Basics - Anfänger-Themen 7
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
A Elemente in einem Array Java Basics - Anfänger-Themen 5
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
Igig1 Wie lasse ich dir Werte in einem Array zusammenrücken? Java Basics - Anfänger-Themen 4
Igig1 Welche Werte sind als default Werte in einem Array, der als Datentyp eine Klasse hat? Java Basics - Anfänger-Themen 1
Schniffi Nur bestimmte Bilder aus einem Array auf Image Button anzeigen lassen Java Basics - Anfänger-Themen 3
B Häufigkeit einzelner Zahlen in einem Array Java Basics - Anfänger-Themen 6
D Zufällige Auswahl aus einem angelegten Array? Java Basics - Anfänger-Themen 10
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
T Methode schreiben, die einem Array ein Stringelement hinzufügt, wenn dieses noch nicht enthalten ist. Java Basics - Anfänger-Themen 6
H Minimum in einem Array bestimmen Java Basics - Anfänger-Themen 7
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
G Methoden Methode die aus einem Array ein Index ausgibt? Java Basics - Anfänger-Themen 2
U Muster in einem Array erkennen Java Basics - Anfänger-Themen 8
Z Char Array an zufälligen stellen mit einem "x" füllen. Java Basics - Anfänger-Themen 4
J Elemente in einem 2D-Array summieren Java Basics - Anfänger-Themen 6
J String aus einem Array entfernen Java Basics - Anfänger-Themen 10
L Wie frage ich ab, ob in einem Array, Werte doppelt vorkommen? Java Basics - Anfänger-Themen 4
P Arraylist zu einem Array bringen mit Verschachtelung Java Basics - Anfänger-Themen 11
M Ist es möglich, das größte und zweitgrößte element in einem Array mit nur einer Schleife ausfindig zu machen ? Java Basics - Anfänger-Themen 19
H Objekt aus einem Array löschen Java Basics - Anfänger-Themen 1
L Anzahl der Elemente key in einem Array mit log(N) Laufzeit Java Basics - Anfänger-Themen 4
FelixN RegEx aus einem String als String-Array zurückgeben Java Basics - Anfänger-Themen 8
B Werte aus einem Unterprogramm in ein Array schreiben Java Basics - Anfänger-Themen 2
L Nur Bestimmte Werte aus einem Array in ein anderes Speichern Java Basics - Anfänger-Themen 11
F Summe in einem Array bestimmen Java Basics - Anfänger-Themen 3
D Alle Möglichkeiten, n-Anzahl aus Elementen aus einem Array zu wählen, ausgeben? Java Basics - Anfänger-Themen 23
D Werte aus einem BinärBaum in einem Array speichern Java Basics - Anfänger-Themen 1
E Zahlen von einem Array mit zahlen von zweitem Array vergleichen Java Basics - Anfänger-Themen 27
S Schiffe versenken - Zufallszahlen in einem Array Java Basics - Anfänger-Themen 6
Dilara_K Abstand zwischen den Doppelwerten in einem Array herausfinden Java Basics - Anfänger-Themen 20
T Schauen ob eine Ziffer in einem String-Array häufiger vorkommt Java Basics - Anfänger-Themen 8
P Input/Output Bestimmte Anzahl von Werten in einem Array an Methode übergeben Java Basics - Anfänger-Themen 2
N Methoden vorherigen Wert in einem Array lieferen Java Basics - Anfänger-Themen 8
P Aus einem Array zwei Arrays machen Java Basics - Anfänger-Themen 3
D Input/Output Array in einem String mit einem Trennzeichen verbinden Java Basics - Anfänger-Themen 17
M 2 Stellen in einem Array vergleichen und bei übereinstimmen eine davon ersetzen Java Basics - Anfänger-Themen 1
V Elemente aus einem Array mit null überschreiben Java Basics - Anfänger-Themen 4
K Compiler-Fehler Durchschnitt einer Spalte in einem 2D-Array Java Basics - Anfänger-Themen 1
A .txt Datei in einem Array speichern Java Basics - Anfänger-Themen 1
H Leere Eingabe in einem array Java Basics - Anfänger-Themen 11
B seltenes Vorkommen eines Integers in einem Array Java Basics - Anfänger-Themen 13
A Frage zu einem Array Java Basics - Anfänger-Themen 14
B Methoden Element aus einem Array löschen, Rest nach vorne verschieben? Java Basics - Anfänger-Themen 4
M Bestimmen, wie oft ein Char in einem Array vorkommt Java Basics - Anfänger-Themen 2
R Anzahl von Zeichen in einem Char Array Java Basics - Anfänger-Themen 4
L Linerae Suche in einem sortierten Array Java Basics - Anfänger-Themen 2
D Alle möglichen Kombinationen in einem Array ausgeben Java Basics - Anfänger-Themen 2
Y Gleiche Arrays aus einem Array mit Objekten Java Basics - Anfänger-Themen 5
F Methoden Kontaktliste - String in einem Array suchen und ausgeben Java Basics - Anfänger-Themen 3
B Binäre Suche in einem String Array Java Basics - Anfänger-Themen 10
C Abfrage nach einem Bild im Array Java Basics - Anfänger-Themen 9
C Rekursion auf einem Array(negative werte addieren) Java Basics - Anfänger-Themen 4
W JTable mit einem JButton-Array füllen Java Basics - Anfänger-Themen 4
D SetText Ausgabe von einem Array Java Basics - Anfänger-Themen 6
F Objekte in einem Array speichern Java Basics - Anfänger-Themen 1
E Summe der "Nachbarn" eines Wertes in einem Array bestimmen Java Basics - Anfänger-Themen 8
V Zwei Array in einem kopieren Java Basics - Anfänger-Themen 3
H n Zahlen aus einem Array addieren Java Basics - Anfänger-Themen 17
V Anzahl von gleichen Werten in einem Int-Array ermitteln Java Basics - Anfänger-Themen 4
1 Minimum aller Elemente in einem Array bestimmen Java Basics - Anfänger-Themen 10
A Methoden Array: ausgeben von einem Wörterbucheintrag Java Basics - Anfänger-Themen 4
J In einem Array die größte Zahl ermitteln und Faktorisieren. Java Basics - Anfänger-Themen 5
M In Testklasse einem Array Werte übergeben Java Basics - Anfänger-Themen 6
J Methoden Einzelnen Wert aus Objekt aus einem Array auslesen und danach sortieren Java Basics - Anfänger-Themen 8
S Rückgabe von einem Array Java Basics - Anfänger-Themen 7
J Speichern von Würfelwürfen in einem Array Java Basics - Anfänger-Themen 5
F Einzelne Werte aus einem Array vergleichen? Java Basics - Anfänger-Themen 8
G String einem String Array übergeben Java Basics - Anfänger-Themen 3
G Element einem Array hinzufügen Java Basics - Anfänger-Themen 7
W Elemente in einem Array nach 'oben' verschieben Java Basics - Anfänger-Themen 9
I Objekte in einem Array sortieren Java Basics - Anfänger-Themen 19
D Eine Stelle eines Char- Arrays nach dem vorkommen in einem ganzem anderem Array überprüfen Java Basics - Anfänger-Themen 20
J Einem String-Array in einer for-Schleife Strings zuweisen - Klappt nicht in einer for-Schleife Java Basics - Anfänger-Themen 5
P String Sortieren in einem Array Java Basics - Anfänger-Themen 7
D Arrays zusammenfügen und in einem Array ausgeben Java Basics - Anfänger-Themen 3
T Mehrfach auftretende Zahlen in einem Array Java Basics - Anfänger-Themen 13
N Array problem bei einem magischen Quadrats Java Basics - Anfänger-Themen 3
M eine 1 von einem 2d Array subtrahieren Java Basics - Anfänger-Themen 11
I Erste Schritte Ein Zeichen in einem Array Suchen Java Basics - Anfänger-Themen 8
C Ausgabe von einem Array Java Basics - Anfänger-Themen 5
R Aus einem 2 d array rausgreifen Java Basics - Anfänger-Themen 9
K Letzter element aus einem Array Java Basics - Anfänger-Themen 5
D Erste Schritte Warum wird bei einem Array die Länge über Length ausgegeben? Java Basics - Anfänger-Themen 6
J Alle Vorkommen eines chars in einem Array durch einen anderen char ersetzen Java Basics - Anfänger-Themen 10
P Variablen Wert vergleichen mit einem Array? Java Basics - Anfänger-Themen 13
R Teile aus einem mehrdimensionalen Array vergleichen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen


Oben