您的位置:首頁技術文章
文章詳情頁

java中整數數值默認是int類型,這句話正確嗎?

瀏覽:115日期:2024-01-16 13:54:38

問題描述

比如byte b = 1; char c = 1;,如果整數類型默認是int類型的話,那么byte b = 1;應該需要強轉換才對,因為int是高精度的,但這里明顯不報錯,這是為什們呢?

問題解答

回答1:

首先,整數類型默認是int。這個毫無疑問。其次,在允許的類型范圍內,在此處byte:-128~127 而整數int 1 在這個范圍,編譯器會對常量自動進行向下的轉化。如果超出這個范圍的常量,編譯器直接報錯。

回答2:

byte,short,char,boolean在底層都是當做int來處理的

回答3:

不對的,兩個整形相加,如果小于等于int,則默認是int,如果其中一個為long,則默認按照long;

你試試申明兩個byte變量,然后相加賦值給另一個byte變量,編譯器會提示出錯的,需要強制類型轉換的

回答4:

看看這篇:http://www.programgo.com/arti...

回答5:

分自動轉換和強制轉換的

標簽: java
国产综合久久一区二区三区