Java基本类型练习1
為什么80%的碼農都做不了架構師?>>> ??
IntegerValTest.java
package sample;
public class IntegerValTest
 {
 ?? ?public static void main(String[] args)
 ?? ?{
 ?? ??? ?/*
 ?? ??? ??? ?Java里面數據類型分為:基本類型,引用類型
 ?? ??? ??? ?基本類型8個分別為:
 ?? ??? ??? ?byte 1個字節=8bit
 ?? ??? ??? ?short 2個字節
 ?? ??? ??? ?int 4個字節
 ?? ??? ??? ?long 8個字節
 ?? ??? ??? ?char 2個字節
 ?? ??? ??? ?float 4個字節
 ?? ??? ??? ?double 8個字節
 ?? ??? ??? ?boolean 1個字節
?? ??? ??? ?整數類型和浮點類型的值較小類型自動轉換為較大類型。
?? ??? ??? ?整數類型值有4中表達方式:
 ?? ??? ??? ?十進制 常用的
 ?? ??? ??? ?二進制 0b開頭
 ?? ??? ??? ?八進制 0開頭
 ?? ??? ??? ?十六進制 0x開頭
 ?? ??? ?*/
 ?? ??? ?//定義兩個8位的二進制整數
 ?? ??? ?int binVal1 = 0b11010100;
 ?? ??? ?int binVal2 = 0B01101001;
 ?? ??? ?//定義一個32位的二進制整數,最高位是符號位
 ?? ??? ?int binVal3 = 0B10000000000000000000000000000011;
 ?? ??? ?System.out.println(binVal1);
 ?? ??? ?System.out.println(binVal2);
 ?? ??? ?System.out.println(binVal3);
 ?? ??? ?
 ?? ??? ?//所有數字在計算機底層都是以二進制形式存在的,原碼是直接將一個數值換算成二進制數。但計算機以補碼的形式保存所有的整數。
 ?? ??? ?//補碼的計算規則:正數的補碼和原碼完全相同,負數的補碼是其反碼加1;反碼是對原碼按位取反,只是最高位符號位保持不變。
?? ??? ?/*
 ?? ??? ?定義一個8位的二進制整數,該數值默認占32位,因此它是一個正數只是強制向下類型轉換成byte時產生了溢出,最終導致binVal4變成了-23
 ?? ??? ?*/
 ?? ??? ?byte binVal4 = (byte)0b11101001;
 ?? ??? ?/*
 ?? ??? ??? ?定義一個32為的二進制整數,最高位是1
 ?? ??? ??? ?但由于數值后添加了L后綴,因此該整數實際占64位,第32位的1不是符號位,因此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
?
轉載于:https://my.oschina.net/Sadhu/blog/2962767
總結
以上是生活随笔為你收集整理的Java基本类型练习1的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: snmp默认端口号是多少
- 下一篇: vue利用popstate实现处理页面返
