Gibt es einen natürlicheren Weg, diese Zahlen ohne den Einsatz von Casting in Java darzustellen?Zahlen ohne Casting in Java darstellen
float tolerance = (float) 8.0e-7;
byte[] data = new byte[]{(byte) 0xFF , (byte) 0x15};
mit Nicht nur auf jenen Fällen, Gießen überhaupt nicht funktioniert, und es sieht einfach seltsam, wenn Sie Konstanten eines primitiven Typ definieren und Sie haben Gießen zu verwenden, sie zu vertreten (es ist wie du bist sagen, dass Java diese Datentypen natürlich nicht unterstützt, was lächerlich ist).
Ich verstehe, dass für den Schwimmer Nummer, die Sie es wie folgt darstellen:
float tolerance = 0.0000008f;
aber es ist in dieser Form nur fast unleserlich.
'0x15' wird eigenständig ohne die Besetzung. '0xff' benötigt den Cast, da Bytes in Java signiert sind und als '-1' interpretiert werden. – kjsebastian
@conscells Followup: Also würde' -0x01' ohne Cast als Ersatz für' (byte) 0xFF' funktionieren. Oder nur "-1". – Andreas
beide sollten funktionieren, wenn ich nicht falsch bin – kjsebastian