大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 四類Java8大基本數據類型詳解

四類Java8大基本數據類型詳解

更新時間:2020-07-09 15:29:13 來源:動力節點 瀏覽3836次

boolean類型

Boolean在內存中占用一個字節。

當java編譯器把java源代碼編譯為字節碼時,會用int或byte來表示boolean。在java虛擬機中,用整數零來表示false,用任意一個非零整數表示true。

java虛擬機這種底層處理方式對java虛擬機是透明的,在java源程序中boolean類型的變量取值只能是true或false

byte、short、int、和long整數類型

byte、short、int、long都是整數類型,并且是有符號整數分別占用1、2、4、8個字節。

取值范圍分別是-127—127、-2的15次方到2的15次方減一、-2的31次方到2的31次方減一、-2的63次方到2的63次方減一

byte在內存中占用一個字節取值范圍是-128—127。在定義一個變量時。比如月份的取值是1到12。因此把代表月份的month變量定義為byte類型會節省內存空間。

在實際應用中通常把month定義為int類型,因為這樣可以簡化數據運算時強制類型轉換操作。

byte month=1;

month=month+2;//編譯錯誤需要強轉

month=(byte)(month+2);//編譯正確

Java中整型常量數值的默認類型是int類型

char字符類型

char是字符類型占用兩個字節,java語言對字符采用Unicode字符編碼。

char是按照字符存儲的,不管英文還是中文,固定占用占用2個字節,用來儲存Unicode字符。范圍在0-65536。

utf-8與utf-16都是處理Unicode編碼,它們的編碼規則不太相同

utf-16的編碼效率高,從字節到字符的相互轉換更簡單,進行字符串操作也更好。它適合在本地磁盤和內存之間使用,可以進行字符和字節直接的快速切換,

如java的內存編碼就采用utf-16編碼。但是它不適合在網絡直接的傳輸utf-16采用順序編碼,不能對單個字符的編碼值進行校驗。如果中間一個字符碼值損壞,后面所有碼值都受到影響。

因為網絡傳輸容易損壞字節流,一旦字節流損壞就很難恢復。

utf-8更適合網絡傳輸對字符采用單字節的存儲,對漢字采用三個字節表示,另外單字節的損壞也不會影響后面的其他字符,在編碼效率上介于GBK和utf-16之前,在編碼效率和安全上做了平衡

所以utf-8是理想的中文編碼方式

上面藍色字體部分看起來自相矛盾(用char聲明漢字)下面解釋一下Unicode編碼和UTF編碼

Unicode編碼由國際Unicode協會編制,收錄了全世界所有語言文字中的字符,是一種跨平臺的字符編碼USC(Universal Character Set)是指采用Unicode編碼的通用字符集。Unicode有兩種編碼方案。

用兩個字節(16位)編碼,采用這個編碼方案的字符集稱為UCS-2。java語言采用的就是兩個字節的編碼方案

用四個字節(32位)編碼(實際上只用了31位,最高位必須為0),采用這個編碼的字符集被稱為UCS-4。

UTF編碼:有些操作系統不完全支持16位或32位的Unicode編碼,UTF(UCS Transformation Format)編碼能夠把Unicode編碼轉換為操作系統支持的編碼,常見的UTF編碼有utf-8,utf-7,utf-16

總結:上面藍色字體看似矛盾的部分是因為utf編碼對Unicode(UCS)進行了轉換和優化

float和double浮點類型(帶小數)

float:占四個字節,共32位,稱為單精度浮點數

double:占八個字節,共64位,稱為雙精度浮點數

Java中的浮點型常量數值默認是double類型

注意:java提供的浮點類型不適合進行精確的運算

四類Java8大基本數據類型詳解

解決辦法:java.math.BigDecimal類可以滿足用戶的精度注意構造BigDecimal類時構造方法中的參數不建議是浮點類型需要轉成String類型

基本數據類型轉換

上面四類八種基本數據類型。除了boolean類型。整型浮點型和字符型數據可以進行混合轉換

從低位到高位會自動進行類型轉換,(向上轉型)

從高位到低位需要進行強制類型轉換。(向下轉型)

從低位到高位byte、char、short、int、long、float、double

float f=3.14;//編譯錯誤,不能把double類型直接賦值給float類型變量需要強制類型轉換

應用中,強制類型轉換有可能會導致數據溢出或者精度下降,應該避免使用強制類型轉換。

下面代碼中把int強制轉換為byte類型,會導致數據溢出。

四類Java8大基本數據類型詳解

以上就是動力節點java培訓機構的小編針對“四類Java8大基本數據類型詳解”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 麻豆首页| 简单视频在线播放jdav | 精品一区二区三区四区乱码90 | 日日拍夜夜嗷嗷叫狠狠 | 久久伊人成人 | 综合 欧美 国产 视频二区 | 亚洲国产一级a毛片 | 四虎欧美在线观看免费 | 亚洲最大黄色网址 | 羞羞色院91蜜桃在线观看 | 奇米影视777俺要去888 | 免费国产成人 | 日韩中文字幕在线播放 | 97在线免费看视频 | 日韩毛片免费看 | 国产日韩精品一区在线不卡 | 亚洲va在线va天堂成人 | 四虎成人国产精品视频 | 5g天天爽影院 | 99热久久这里只精品国产 | 五月综合激情视频在线观看 | 香蕉视频在线观看男女 | 99在线国产视频 | 亚洲国产精品乱码一区二区三区 | 添bbb免费观看高清视频 | 国产激情视频在线观看首页 | 老妇毛片久久久久久久久 | 99r精品| 免费精品99久久国产综合精品 | 男女午夜激情 | 亚洲加勒比久久88色综合一区 | 色综合视频 | 国产精品一区在线免费观看 | 久久思re热9一区二区三区 | 在线亚洲 欧美 日本专区 | 久久亚 | 99久久精品免费看国产免费 | 精品九九久久国内精品 | 三a大片| 成人综合网址 | 亚洲性视频网站 |