Java基本类型练习1
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
IntegerValTest.java
package sample;
public class IntegerValTest
{
?? ?public static void main(String[] args)
?? ?{
?? ??? ?/*
?? ??? ??? ?Java里面數(shù)據(jù)類型分為:基本類型,引用類型
?? ??? ??? ?基本類型8個(gè)分別為:
?? ??? ??? ?byte 1個(gè)字節(jié)=8bit
?? ??? ??? ?short 2個(gè)字節(jié)
?? ??? ??? ?int 4個(gè)字節(jié)
?? ??? ??? ?long 8個(gè)字節(jié)
?? ??? ??? ?char 2個(gè)字節(jié)
?? ??? ??? ?float 4個(gè)字節(jié)
?? ??? ??? ?double 8個(gè)字節(jié)
?? ??? ??? ?boolean 1個(gè)字節(jié)
?? ??? ??? ?整數(shù)類型和浮點(diǎn)類型的值較小類型自動(dòng)轉(zhuǎn)換為較大類型。
?? ??? ??? ?整數(shù)類型值有4中表達(dá)方式:
?? ??? ??? ?十進(jìn)制 常用的
?? ??? ??? ?二進(jìn)制 0b開頭
?? ??? ??? ?八進(jìn)制 0開頭
?? ??? ??? ?十六進(jìn)制 0x開頭
?? ??? ?*/
?? ??? ?//定義兩個(gè)8位的二進(jìn)制整數(shù)
?? ??? ?int binVal1 = 0b11010100;
?? ??? ?int binVal2 = 0B01101001;
?? ??? ?//定義一個(gè)32位的二進(jìn)制整數(shù),最高位是符號(hào)位
?? ??? ?int binVal3 = 0B10000000000000000000000000000011;
?? ??? ?System.out.println(binVal1);
?? ??? ?System.out.println(binVal2);
?? ??? ?System.out.println(binVal3);
?? ??? ?
?? ??? ?//所有數(shù)字在計(jì)算機(jī)底層都是以二進(jìn)制形式存在的,原碼是直接將一個(gè)數(shù)值換算成二進(jìn)制數(shù)。但計(jì)算機(jī)以補(bǔ)碼的形式保存所有的整數(shù)。
?? ??? ?//補(bǔ)碼的計(jì)算規(guī)則:正數(shù)的補(bǔ)碼和原碼完全相同,負(fù)數(shù)的補(bǔ)碼是其反碼加1;反碼是對(duì)原碼按位取反,只是最高位符號(hào)位保持不變。
?? ??? ?/*
?? ??? ?定義一個(gè)8位的二進(jìn)制整數(shù),該數(shù)值默認(rèn)占32位,因此它是一個(gè)正數(shù)只是強(qiáng)制向下類型轉(zhuǎn)換成byte時(shí)產(chǎn)生了溢出,最終導(dǎo)致binVal4變成了-23
?? ??? ?*/
?? ??? ?byte binVal4 = (byte)0b11101001;
?? ??? ?/*
?? ??? ??? ?定義一個(gè)32為的二進(jìn)制整數(shù),最高位是1
?? ??? ??? ?但由于數(shù)值后添加了L后綴,因此該整數(shù)實(shí)際占64位,第32位的1不是符號(hào)位,因此binVal5的值等于2的31次方+2+1
?? ??? ?*/
?? ??? ?long binVal5 = 0B10000000000000000000000000000011L;
?? ??? ?System.out.println(binVal4);
?? ??? ?System.out.println(binVal5);
?? ?}
}
javac -d . IntegerValTest.java
java sample.IntegerValTest
212
105
-2147483645
-23
2147483651
?
轉(zhuǎn)載于:https://my.oschina.net/Sadhu/blog/2962767
總結(jié)
以上是生活随笔為你收集整理的Java基本类型练习1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: snmp默认端口号是多少
- 下一篇: java美元兑换,(Java实现) 美元