多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Java基礎――隱式轉換vs強制轉換

Java基礎――隱式轉換vs強制轉換

來源:程序員人生   發布時間:2015-01-30 08:40:09 閱讀次數:3882次

在定義變量時,有許多要注意的問題,1不謹慎就會出現損失精度或不兼容類型等問題。

例如:

    1.定義長整型數據時,必須加后綴lL

              long l =123456789012345L

    2.定義單精度類型時(7⑻位有效數字),必須加后綴 f F

              float f = 12.5F

          3. boolean類型不可以轉換為其它的數據類型。

這其中,我們常常會遇到數據類型的轉換問題,最為常見的要屬隱式轉換和強迫轉換了,我們來分析1下。

隱式轉換

特點:

從小到大,可以隱式轉換,數據類型將自動提升。

byteshortchar -->int  -->long -->float -->double

注意:long8個字節,float4個字節。

long是整數,float是浮點型,整數和浮點數的存儲規則不1樣,記住1點long的范圍是小于float的。

:

byte a=10;

int b=a;

當編譯intb=a 時,  a隱式轉換為int類型。

強迫轉換

特點:

     從大到小(如果你明確知道數據是可以用該數據類型來表示的,可以用強迫轉換)

格式:(轉換后的數據類型)變量或值。

注:1般情況下,根本不推薦使用強迫類型轉換。

            例1 :

int a=10;

byte b=(byte)a;

當編譯 byte b=(byte)a 時, a被強迫轉換為byte類型。

例2:

class QiangZhiDemo { public static void main(String[] args) { byte b=(byte)130; System.out.println(b); //打印結果⑴26 } }


解析:

數據130默許的是int類型的10進制數據,

第1步:10進制130轉換成2進制數據。

  10000010

第2步:130在內存中的表示情勢以下

原碼:0000000000000000 00000000 10000010

第3步:求int130的補碼

由于130是正數,所以,反碼和補碼都和原碼1致。

補碼:0000000000000000 00000000 10000010

第4步:對補碼進行截取,只剩下最后8位。

(byte)130  的補碼為:10000010

第5步:把該補碼轉化為原碼。

由于符號位(第1位)是1,故該數為負數,

反碼:10000001     (補碼⑴)

原碼:11111110     (符號位不變,數據位取反)

轉化為10進制為 ⑴26 ,所以終究打印⑴26

     3 :

shorts = 1;

s= s +1;                

shorts = 1;

s+=1;                        

有問題嗎?為何呢?

     解析

第1程序會報錯:毛病:不兼容的類型:從int轉換到short可能會有損失

          

緣由:s=s+1;s+1會隱式轉換為int類型,當把1個int類型賦值給short類型是,可能會損失。

第2個程序可以編譯運行。

         

緣由:s+=1,雖然可以看作s=s+1,但是還是有區分的,s+=1中有1個強迫轉換,s=(short)(s+1), 會把s+1的值強迫轉換為short類型,故不會報錯。

小結:

數據類型轉換的問題如果產生在 1些小程序上,我們 也許能夠1眼看出,可是當編寫1個龐大的系統時,具有龐大數據量時,這些小小的問題可能致使系統出錯乃至崩潰,所之前期代碼編寫的嚴謹性就得靠我們自己掌控了。




生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲五月七月丁香缴情 | 国产亚洲精品精品国产亚洲综合 | 色xxxx| 免费簧网站永久在线播放国产 | 国产成人片 | 国语对白清晰好大好白在线 | 又污又黄又无遮挡网站 | 女人l8毛片a一级毛片免费 | 亚洲成年人在线观看 | 久久成人精品 | 免费福利影院 | 亚洲精品综合 | 亚洲综合爱爱久久网 | 国产欧美综合精品一区二区 | 亚洲久久综合 | 欧美性大战久久久久久久蜜桃 | 久久一区二区三区99 | 亚洲a成人网77777在线 | 免费日本在线 | 日韩欧美视频在线 | 国产成人高清亚洲一区久久 | 午夜私人福利影院 | 欧美亚洲第一页 | 亚洲精品午夜久久久伊人 | 天堂网成人 | 风间由美一区二区av101 | 国产精品v欧美精品∨日韩 国产精品v欧美精品v日本精 | 欧美最猛性xxxxx免费 | 毛片免费永久不卡视频观看 | 久久久久嫩草影院精品 | 男女视频免费网站 | 亚洲免费看片 | 日韩精品欧美国产精品亚 | 国产大片免费天天看 | 精品国产精品 | 精品在线免费观看 | 中文字幕在线视频第一页 | 国产精品60岁老女人 | 日本高清无吗免费播放 | 午夜视频在线免费播放 | 国产亚洲精 |