Heim >类库下载 >java类库 >Java-Verarbeitung vorzeichenloser Zahlen

Java-Verarbeitung vorzeichenloser Zahlen

高洛峰
高洛峰Original
2016-10-09 16:42:322613Durchsuche

Java hat keine vorzeichenlosen Zahlen, was viele Probleme verursachen wird.

static byte[] x = {(byte) 0xff,(byte) 0xff};
    
    public static void main(String[] args) throws IOException {
    
        byte a = x[0];
        
        int z = a&0xff;
        System.out.println(z);
        
    }

int z = a&0xff,

Zuallererst ist a vom Typ Byte und wird zuerst in den Typ int konvertiert, d. h.

1111 1111 1111 1111 1111 1111 1111 1111

&

0000 0000 0000 0000 0 000 0000 1111 1111

= 0000 0000 0000 0000 0000 0000 1111 1111

Das Ergebnis ist 255. Wenn der Wert z direkt zugewiesen wird, ohne die &0xff-Operation auszuführen, ist der erhaltene Wert -1.


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn