10 基本資料型別自動轉換 強制轉型

2021-08-01 12:46:40 字數 1015 閱讀 4996

容量小的資料型別可以自動轉換為容量大的資料型別;

容量指的是表數範圍而不是位元組數;

圖中,黑色實線箭頭表示無資料丟失的自動型別轉換,而紅色虛線在轉換時可能存在資料丟失。

特例:

可以將整型常量直接賦值給byte、short、char等型別變數,而不需要進行強制型別轉換,只要不超過其表數範圍。

用於顯式的轉換乙個數值的型別

當將一種型別強制轉換為另一種型別而又超出了目標型別的表數範圍,就會被截斷成為乙個完全不同的值,無意義的值!

強制型別轉換:(轉換型別)轉換的變數 例:(char)(a+2)

在混合多種資料型別的表示式中,型別會向容量大的值的資料型別提公升

int money=100000000;

int years=20;

long total=money*years;

//返回的是負數,因為money和years都是int型別,相乘也為int,但其值超過了int的表數範圍,所以溢位。

//錯誤修改

long total=(long)(money*years);

//正確修改

long total=(long)money*years;

//算乙個人70年心跳多少次

long times=70

*60*24

*356

*70;//溢位

//一般我們優先對第乙個數進行型別轉換(可能前面就已經溢位)

long times=70l*60

*24*365

*70;

基本資料型別的強制轉換

輸出hello word byte 128 127 short char int 最多十位數且以2開頭 long float double 精度比float高 boolean 強制型別轉換,大的轉小的不需要變,小的轉大的需要強制型別轉換,在轉換的值得前面加基本資料型別 輸出hello word by...

基本資料型別轉換

八大基本資料型別boolean,char,short,byte,int,long,float,double 八大基本資料型別的包裝類boolean,character,short,byte,integer,long,float,double short,byte,char在進行運算時會自己轉化成in...

基本資料型別轉換

1.其他型別轉stringa.tostring 生成乙個新的字串,不會改變原來的資料型別。a.tostring 2 轉換為二進位制的字串。a.tostring 8 轉換為八進位制的字串。string a 強制轉換為字串型別 兩者區別 x.tostring 不能轉換null和undefined,如需轉...