中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中怎么實現基本數據類型轉換

發布時間:2021-08-10 18:06:46 來源:億速云 閱讀:178 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家帶來有關Java中怎么實現基本數據類型轉換,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

自動類型轉換

自動類型轉換是指:數字表示范圍小的數據類型可以自動轉換成范圍大的數據類型。

如:

long l = 100;  int i = 200;  long ll = i;

具體自動轉換如如下圖所示。

Java中怎么實現基本數據類型轉換

實線表示自動轉換時不會造成數據丟失,虛線則可能會出現數據丟失問題。

自動轉換也要小心數據溢出問題,看下面的例子。

int count = 100000000;  int price = 1999;  long totalPrice = count *  price;

編譯沒任何問題,但結果卻輸出的是負數,這是因為兩個 int 相乘得到的結果是 int, 相乘的結果超出了 int 的代表范圍。這種情況,一般把***個數據轉換成范圍大的數據類型再和其他的數據進行運算。

int count = 100000000;  int price = 1999;  long totalPrice = (long) count * price;

另外,向下轉換時可以直接將 int 常量字面量賦值給 byte、short、char 等數據類型,而不需要強制轉換,只要該常量值不超過該類型的表示范圍都能自動轉換。

強制類型轉換

強制類型轉換我們再清楚不過了,即強制顯示的把一個數據類型轉換為另外一種數據類型。

如:

short s = 199;  int i = s; // 199  double d = 10.24;  long ll = (long) d;  // 10

以上的轉換結果都在我們的預期之內,屬于正常的轉換和丟失精度的情況,下面的例子就一樣屬于數據溢出的情況。

int ii = 300;  byte b = (byte)ii;

300 已經超出了 byte 類型表示的范圍,所以會轉換成一個毫無意義的數字。

類型提升

所謂類型提升就是指在多種不同數據類型的表達式中,類型會自動向范圍表示大的值的數據類型提升。

把上面的溢出的例子再改下。

long count = 100000000;  int price = 1999;  long totalPrice = price * count;

price 為 int 型,count 為 long 型,運算結果為 long 型,運算結果正常,沒有出現溢出的情況。

上述就是小編為大家分享的Java中怎么實現基本數據類型轉換了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

尼勒克县| 奉化市| 甘肃省| 礼泉县| 奉节县| 射洪县| 虞城县| 阳信县| 桦甸市| 农安县| 金阳县| 肇源县| 大港区| 古田县| 科技| 崇州市| 乌审旗| 巴楚县| 灵宝市| 东辽县| 通许县| 太保市| 唐海县| 启东市| 美姑县| 遂宁市| 黄梅县| 钦州市| 盐亭县| 新邵县| 杭州市| 集安市| 阜康市| 岳阳县| 马鞍山市| 广东省| 宣城市| 通辽市| 揭东县| 伊金霍洛旗| 宣武区|