A
a_java_user
Gast
Hallo,
für meine Facharbeit in der Schule muss ich den AES-Algorithmus in JAVA implementieren. An sich ist das ganze nicht sonderlich schwer, auch wenn ich kein ausgesprochener Freund von JAVA bin.
Jetzt macht mir allerdings gerade beim Testen die Typenumwandlung von Integer -> Hexadezimal zu schaffen:
aus mir unerfindlichen Gründen werden dem byte-Array negative Werte zugewiesen, was ja an sich eigentlich nicht passieren dürfte.
Ich habe dies dann nochmals mit folgendem Code getestet:
eigentlich müsste ja nun auch bei der byte-Ausgabe 145 ausgegeben werden, doch leider ist hierbei der Wert -122 ausgegeben worden.
Daher würde mich nun interessieren, warum dies nicht funktioniert. Ich bin kein Programmieranfänger, benutze Java allerdings nur äußerst selten, da ich C++ und VB.Net favoritisiere.
Ich bedanke mich vielmals für eure Hilfe!
Grüße
für meine Facharbeit in der Schule muss ich den AES-Algorithmus in JAVA implementieren. An sich ist das ganze nicht sonderlich schwer, auch wenn ich kein ausgesprochener Freund von JAVA bin.
Jetzt macht mir allerdings gerade beim Testen die Typenumwandlung von Integer -> Hexadezimal zu schaffen:
Java:
byte data[][] = new byte[2][1];
data[0][0] = (byte)0x19;
data[1][0] = (byte)0xA0;
aus mir unerfindlichen Gründen werden dem byte-Array negative Werte zugewiesen, was ja an sich eigentlich nicht passieren dürfte.
Ich habe dies dann nochmals mit folgendem Code getestet:
Java:
System.out.println(0x91);
System.out.println((byte)0x91);
System.out.println((byte)145); // 0x91 -> 145
eigentlich müsste ja nun auch bei der byte-Ausgabe 145 ausgegeben werden, doch leider ist hierbei der Wert -122 ausgegeben worden.
Daher würde mich nun interessieren, warum dies nicht funktioniert. Ich bin kein Programmieranfänger, benutze Java allerdings nur äußerst selten, da ich C++ und VB.Net favoritisiere.
Ich bedanke mich vielmals für eure Hilfe!
Grüße