java自動轉換
① 什麼情況下java實現自動轉換,什麼情況下需要強制轉換TAT
自動轉換和強制轉換我知道的有兩種情況:基本數據類型
和
類。
先說基本數據類型:因為java是強類型語言,由強類型向弱類型轉換需要強制轉換,而由弱類型向強類型轉換則系統自動轉換。比如:double
類型相比int類型是屬於強類型,則由double類型的數據向int類型數據轉換就需要強制轉換,反之則自動轉換。另外八大基本數據類型的強弱關系如下:byte
評論
0
0
載入更多
② java舉例說明在什麼情況下會發生自動轉換
小向大會發生自動轉換,當然不是一定會轉換,是要在一定的情況下才會發生的.如float會自動轉換成double,發生這種情況的前提是:當數據位數超過了32位,就會自動轉換成double的,這樣才會有效的使數據不被輕易丟失.大向小如:使double轉換成float的就只能用強制類型轉換!
就好像是用兩個塑料杯子倒水一樣,當你把小杯子里的水倒到大杯子裡面時,沒有任何問題,是可以完成操作的,而當你把大杯子里的水倒到小杯子里時,就只有強行的把小杯子弄大.
所以小到大自動轉換,大到小強制類型轉換!
③ Java數據類型自動轉換的優先順序
樓主你好: 轉換原則:從低精度向高精度轉換byte 、short、int、long、float、double、char
註:兩個char型運算時,自動轉換為int型;當char與別的類型運算時,也會先自動轉換為int型的,再做其它類型的自動轉換
基本類型有以下四種:int 長度數據類型有:byte(8bits)、short(16bits)、int(32bits)、long(64bits)、
float 長度數據類型有:單精度(32bits float)、雙精度(64bits double)
boolean 類型變數的取值有:ture、false 。1位元組(8位)
char數據類型有:unicode字元,16位
對應的類類型:Integer、Float、Boolean、Character、Double、Short、Byte、Long
④ java自動轉換是先判斷轉換基本類型再判斷轉換包裝類的嗎
因為
public
static
void
go(Short
n)
是對象Short
,不是基本類型short
如果是short,那麼那麼會輸出short。
基本類型的自動轉換
short->int->long->float->double
所以short
y會被轉成int
但是,如果程序中不包括基本的類型的重載方法時,
然後才是自動封裝成對象。
⑤ java重載時自動轉換是怎麼回事
當一個重載的方法被調用時,Java在調用方法的參數和方法的自變數之間尋找匹配。
但是,這種匹配並不總是精確的。只有在找不到精確匹配時,Java的自動轉換才會起作用。 (如果定義了test(int),當然先調用test(int)而不會調用test(double)。 )
本章源碼
//自動類型轉換 Automatic type conversions() apply to overloading.
class Overload1 {
// Overload test for two integer parameters.
void test(int a, int b) {
System.out.println("a and b: " + a + " " + b);
}
// overload test for a double parameter
void test(double a) {
System.out.println("Inside test(double) a: " + a);
}
}
public class Test {
public static void main(String args[]) {
Overload1 ob = new Overload1();
int i = 90;
ob.test(i); // 沒有int類型,所以調用double類型的自動轉換。this will invoke test(double)
。。。。。。。。。。。。。。。。詳情網上找「馬克-to-win」,參考他的網站或他的網路空間:java第2章的內容
⑥ java自動類型轉換示例
自動類型轉換,就是一個類型直接可以賦值給另外一個類型,而不需要強制進行轉換。
舉例:
publicclassTest{
publicstaticvoidmain(Stringargs[])
{
inti=123;
charc1=22;
charc2='c';
byteb=2;
intn=b;
longl=i;
System.out.println(n);
System.out.println(l);
}
}
⑦ java自動類型轉換是什麼意思
自動拆箱與自動裝箱吧?
就是原生數據類型與它的包裝類可以直接轉換了
以前:
Integer
a
=
new
Integer(2);
int
b
=
a.intValue();
現在
int
a
=
new
Integer(2);
原生數據類型與包裝類
int
->
Integer
short
->Short
byte
->Byte
char
->
Character
long
->
Long
boolean
->Boolean
double
-
Double
float
->
Float
⑧ java自動類型轉換是什麼意思
在理解自動類型轉換之前必須理解這樣一個原則「表數范圍小的可以向表數范圍大的進行自動類型轉換」,因此自動類型轉換指小可轉大,大轉小會失去精度,自動類型是兩個大小不同的數據,會把小的轉變成大的進行運算。
java高級編程語言是一種類型語言,編程過程中的對數據類型的限制是比較嚴格的。
⑨ java編譯時,自動類型轉換,是不是自動在變數前面加上要轉換的類型
1、小的類型自動轉化為大的類型
2、整數類型可以自動轉化為浮點類型,可能會產生舍入誤差
3、字元可以自動提升為整數,自動轉換類型不需要在前面加類型,那是強制轉換。
⑩ Java語言的數據類型,int和float能自動轉換嗎都是4位元組,擱一塊兒轉換成啥類型
int和float能自動轉換的,運算會先自動轉換為兩個float,然後進行運算(如果int的有效數字較多,可能會丟失部分數據),最後的結果只能保證7位有效數據。