Rumah >类库下载 >java类库 >Java 无符号数的处理

Java 无符号数的处理

高洛峰
高洛峰asal
2016-10-09 16:42:322613semak imbas

Java没有无符号数,这会带来很多问题。

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,

首先a为byte类型,在对其进行&操作时,会先将其转换成int类型,即

  1111 1111        1111 1111        1111 1111        1111 1111

&

  0000 0000        0000 0000        0000 0000        1111 1111

= 0000 0000         0000 0000        0000 0000        1111 1111

结果为255,若不进行&0xff操作直接赋值给z,则得到的值为-1.


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:java list 去除 重复值Artikel seterusnya:Java基础学习