Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Eine Liste wie ne HashTable, nur mit auslesbaren Key . . .
Ich brauche quais eine HashTable, nur dass ich den Key auslesen können muss. Leider bin ich noch nciht so fit in Java, dass mir da spontan was einfallen würde.
Einfach in die API Doc schauen (oder sich von einer IDE helfen lassen): Map (Java 2 Platform SE 5.0))
Wenn du übrigens nicht auf die Spezialitäten der HashTable angewiesen bist, solltest du auf die modernere Variante HashMap zurückgreifen
keine Ahnung, hauptsache dasselbe, was auch im Generischen typ von der map/hashtable eingetragen ist, oder irgendwelche wilde kombinationen aus wildcards.
ach du Schande, bitte erstmal Kapitel 1 in irgendeinem Lehrbuch..
Variablen klein schreiben! Fehlermeldungen immer posten,
Programme lieber vollständig oder in überdeutlich großen Ausschnitten posten als einzelne Befehle
hast du überhaupt eine Variable und ein Objekt vom Typ HashTable?,
du wirst doch hoffentlich die Variable nicht genau wie die Klasse benannt haben
1. Lass die Variablen-Bennenung mal meine Sorge sein (im Gegenstz zu meisten habe ich eine feste Varaiblen Bennenung mit Typ & Inhalt)
2. Es ist ein sprechendes Beispiel
3. Genau so habe ich es programmiert & es kommt sofort "Set cannot be resolved to a type."
Ne, eher weniger @Wildcard, komme eigentlich aus der C#.NET-Ecke . . . wurde jetzt ins kalte Java-Wasser geworfen & darf ein Tool um stricken, was zuvor einige Köche versaut haben . . . .
Ich verstehe überhaupt keinen Buchstaben von deinem Code, was ist das? Wo hast du das her? Nach java sieht das irgendwie nicht aus, Lehrbuch verwechselt?
...vorausgesetzt du sagst Eclipse, was du benötigst^^
1.4.2? Hmm, gab's da schon generics? Ansonsten halt einfach untypisiert lassen, und dauernd alles hinundher casten.
Jetzt weißte wie es mir geht @Andrey Und ja, es sollte Java sein . . . da es nciht so funzt, wie ich es mir gfedacht habe, dachte ich, ich frag mal in nem Java-Forum . . .
Ziehen wir das Pferd mal ander auf . . . wenn Ihr die Key's einer Hastable via System.out.println ausgeben wollen würdet, wie würdet Ihr das programmieren?
Wenn du keine Generics verwenden kannst, musst du einen haufen Klammern weglassen, damit es in etwa Syntaxkonform ist. In der C# Ecke müsste es doch eigentlich auch üblich sein, dass man kurz die Sprachbeschreibung durchblättert, bevor es ans Programmieren geht?
Wegen uralt JRE ohne Generics und foreach:
[HIGHLIGHT="Java"]Map map = new HashMap();
Iterator it = map.keyset().iterator();
while(it.hasNext()){
System.out.println(it.next());
}
[/HIGHLIGHT]
Erste Variante bitte nicht verwenden. Performancekill.
Ansonsten ist toString() und String.valueOf() nicht dafür gedacht [auch wenn bei Strings rein zufällig dasselbe rauskommt]. Man sollte einfach nur casten.
so sollte es imho auf 1.4 aussehen. Ich bin mir allerdings nicht sicher. Ich weiß überhaupt nicht, ob das funktioniert. Bei der aktuellen version müsste es imho ClassCastExceptions hageln, kA
Versuch's mal so. Denn deine Variante mit Strings funktioniert ausschließlich mit Strings, weil die so zu sagen die einzigen toString()-invariante Objekte sind.
Und diese Array-geschichte sollte man nicht verwenden, weil es performance- und speicherfressend ist, und außerdem völlig unsinnig, da die Reihenfolge in einem Set eh undefiniert ist, also sollte man da auch kein random access durch irgendwelche finsteren hacks erzwingen.
sollte doch funktionieren unter 1.4.2
Nur bekommt er ein Set mit Objects zurück.
Wenn man sich "programmtechnisch" sicher ist, nur Strings zu erhalten, dann geht auch
Code:
String myKey=(String)HashTable.keySet().next();
(Hab ich selbst schon in meiner Java-Lernphase gemacht. Bislang isset immer jot jejange)
Wenn man sich nicht sicher sein kann, kann man umfangreiche