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.
ich muss mich wohl ein bißchen konkreter fassen,
das ganze ist nämlich doch umfangreicher.
Also, es geht um HashTabellen.
Ich bekomme einen String Schlüssel übergeben, bestehend aus Zeichen jeglicher Art, mit dem ich dann in der HashFunktion rechnen muss.
Folglich dachte ich, dass ich jedes Zeichen in einen int Wert umwandle und mit denen rechne. (Ich bin mir nicht sicher, ob das nötig ist...)
Beispiel:
Code:
int b=0;
String Schlüssel = "AB";
for(int i=0; i<2; i++){
b = (int)a.charAt(i);
}
// A = 65
// B = 66
// AB soll sein 6566
// nicht 131
So, auf die Art hab ich mir das erstmal gedacht. Ich weiß nicht, ob das das Klügste ist.
Immerhin gehe ich von String zu int; und anscheinend muss ich dann auch wieder von int zu String, nur um die einzelnen Werte zusammenzufügen.
Weiß jmd ob ich gleich mit dem String Schlüssel rechnen kann? Wie?
Falls das nicht geht, hänge ich noch an dem Problem, die einzelnen Zahlenwerte aneinander zu fügen...erst int zu String, und das alles in der Schleife... :autsch:
Denkanstöße sind erwünscht.
Wie oben bereits erwähnt, wandele ich einzelne Stringzeichen zu Integers um und füge diese dann zusammen.
Leider gerate ich dabei sehr schnell in den BigInteger bereich.
Allerdings scheint BigInteger parseInt(arg0) nicht zu kennen.
Code:
int val = 0;
int tmp = 0;
for(int i=0; i<5; i++){
tmp = (int)insertEntry.getKey().charAt(i);
val = Integer.parseInt(String.valueOf(val+""+tmp));
}
Also, wie gesagt: val bekommt zu große Zahlen überliefert und müsste eigentlich ein BigInteger sein.
Aber, die Variable nur auf BigInteger umstellen bringt's nicht; dann funktioniert mein code nicht mehr.