Hallo,
ich habe eine `ArrayList`, die aus Bytewerten besteht und möchte daraus einen String erzeugen.
Bisher mache ich das so (die Signatur nimmt bewusst den abstrakten Listentyp an):
Geht das irgendwie schöner? Ich habe es schon mit der Methode `.toArray()` auf der Liste probiert, aber da kann ich nur ein Array vom Typ `Byte[]` (also die Wrapperklasse) übergeben, wodurch der Konstruktor von `String()` meckert (soweit geht das Unboxing in Java dann offenbar doch nicht). Würde ich jetzt über eine `for`-Schleife gehen, um mir den `byteValue()` des Wrappers zu holen, dann bin ich ja fast genau so weit wie bei meiner jetzigen Lösung. Gibt es noch irgendeine andere Möglichkeit dafür?
ich habe eine `ArrayList`, die aus Bytewerten besteht und möchte daraus einen String erzeugen.
Bisher mache ich das so (die Signatur nimmt bewusst den abstrakten Listentyp an):
Java:
private String bytelisteAlsString(List<Byte> byteliste) {
byte[] bytearray = new byte[byteliste.size()];
int index = 0;
for (byte bytewert : byteliste) {
bytearray[index] = bytewert;
index++;
}
return new String(bytearray);
}
Geht das irgendwie schöner? Ich habe es schon mit der Methode `.toArray()` auf der Liste probiert, aber da kann ich nur ein Array vom Typ `Byte[]` (also die Wrapperklasse) übergeben, wodurch der Konstruktor von `String()` meckert (soweit geht das Unboxing in Java dann offenbar doch nicht). Würde ich jetzt über eine `for`-Schleife gehen, um mir den `byteValue()` des Wrappers zu holen, dann bin ich ja fast genau so weit wie bei meiner jetzigen Lösung. Gibt es noch irgendeine andere Möglichkeit dafür?