一、基本資料型別轉換
輸出之後是1,因為byte的容量比int少
字元與數字可以相互運算
char
='a'
;byte b0=2;
int k=c+b0;
system.out.
println
(k);
執行結果是99
為什麼會這樣?因為存在ascii碼
任何型別的值和字串進行運算時(+),基本型別的值將自動轉換為字串型別
string str=
"abc"
;int i=1;
system.out.
println
(str + i)
;
輸出結果是abc+1
特別注意:
string str=""+
1+2+
3;system.out.
println
(str)
;//得出123
system.out.
println(3
+4+"hello");
//得出7hello,可以簡單理解為從左向右運算,3+4=7之後,後面運算不動了,直接加上了字串hello
system.out.
println
("hello"+3
+4);
//得出hello34,可以簡單理解為從左向右,但是,字串加任何都是字串,「hello」+3=hello3,它也是字串,再往後,字串加字串等於字串
system.out.
println
('a'+1
+"hello");
//得出98hello,此處可以參考上面ascii碼,字元和數字運算時,字元會用他的ascii碼運算得到98,而98與字串運算時,得到了98hello
system.out.
println
("hello"
+'a'+1
);//得出helloa1,字串加任何等於字串
注意:
char、byte、short之間不可以互相轉換。
小結:
二、強制型別轉換
有一道題目:
short s=5;
s=s-
2;
這是乙個錯誤的表達,在進行s-2的時候,結果會自動轉換為int,但是s是short,將乙個int型賦給乙個short型的s,自然編譯會出錯。 JavaScript資料型別強制轉換
我的個人部落格 基本資料 number,boolean,undefined,null,string 引用資料 object 當0.000 01,小數點後大於等於7位時會自動轉換成科學計數法 當20000 00,當整數部分大於等於22位時會自動轉換成科學計數法。console.log number 1...
強制資料型別轉換之Number型別
強制型別轉換 1.定義 指將乙個資料型別強制轉換為其他的資料型別 型別轉換主要指,將其他的資料型別,轉換為string number,boolean 將其他的資料型別轉換為number 方式一 使用number 函式 字串 數字 1.如果是純數字的字串,則直接將其轉換為數字 2.如果字串中有非數字的...
小端模式與強制資料型別轉換
c 資料型別轉換的問題 include void main int i 0xb62 char c c i cout 這裡為什麼輸出的是b?版本一 有問題,結果無論如何都是34,不能說明34是高位址的還是低位址的 版本二 根據 shineyan1991shineyan1991的建議 從上圖可知,cpu...