short转换byte
java數據類型轉換
long a = 800; //long是64位二進制數 8個字節int b = (int)a; //int是32位二進制數 4個字節short c = (short)b; //short類型是16位二進制數,0000 0000 0000 0000 2個字節byte d = (byte)c; //byte類型是8位二進制數,256個數(-128~127),0000 0000 1個字節System.out.println(a);System.out.println(b);System.out.println(c);System.out.println(d);當強轉時,高位會丟失。例如,short = 800的二進制是0000-0011-0010-0000,
- byte,bit,
1Byte=8bit
1KB=1024B
1MB=1024KB(2的十次方)
- 為什么電腦IPv4地址最大值是255?
IPv4地址是一個32位的二進制數,通常被分割為4個“8位二進制數”(也就是4個字節)
8個二進制位一共可以表示2^8=256個數,即0~255。
- IPv6詳解
IPv6的地址長度為128位,是IPv4地址長度的4倍。于是IPv4點分十進制格式不再適用,采用十六進制表示。IPv6有3種表示方法。
一、冒分十六進制表示法
格式為X:X:X:X:X:X:X:X,其中每個X表示地址中的16bit(位),以十六進制表示,例如:
ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
這種表示法中,每個X的前導0是可以省略的,例如:
2001:0DB8:0000:0023:0008:0800:200C:417A→ 2001:DB8:0:23:8:800:200C:417A
二、0位壓縮表示法
在某些情況下,一個IPv6地址中間可能包含很長的一段0,可以把連續的一段0壓縮為“::”。但為保證地址解析的唯一性,地址中”::”只能出現一次,例如:
FF01:0:0:0:0:0:0:1101 → FF01::1101
0:0:0:0:0:0:0:1 → ::1
0:0:0:0:0:0:0:0 → ::
三、內嵌IPv4地址表示法
為了實現IPv4-IPv6互通,IPv4地址會嵌入IPv6地址中,此時地址常表示為:X:X:X:X:X:X:d.d.d.d,前96bit采用冒分十六進制表示,而最后32b地址則使用IPv4的點分十進制表示,例如::192.168.0.1與::FFFF:192.168.0.1就是兩個典型的例子,注意在前96b中,壓縮0位的方法依舊適用
筆試題:
short s1 = 1; s1 = s1 + 1;有錯嗎?
short s1 = 1; s1 += 1;有錯嗎?
對于short s1 = 1;s1 = s1 + 1;由于1是int類型,因此s1+1運算結果也是int 型,需要強制轉換類型才能賦值給short型。而short s1 = 1; s1 += 1;可以正確編譯,因為s1+= 1; 相當于s1 = (short)(s1 + 1);其中有隱含的強制類型轉換。總結
以上是生活随笔為你收集整理的short转换byte的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 单位换算 Delphi示例
- 下一篇: java 8新特性 instant