資料型態的轉換可分為「自動型態轉換」及「強制型態轉換」。
字元與整數可以使用自動型態轉換;整數與浮點數亦相容;
boolean 布林型態只能存放 true 或 false,因此與整數及字元不相容,不能轉換。
package ch03;
public class ch03_4_4 {
public static void main(String[] args) {
int a=45;
float b=2.3f;
System.out.println("a= "+a+" ,b= "+b);
System.out.println("a/b= "+(a/b));
}
}
OUTPUT:
a= 45 ,b= 2.3
a/b= 19.565218
強制型態轉換是直接撰寫在程式碼中,所以也稱為「顯性轉換」。
資料型態的強制性轉換語法:
OUTPUT:
a= 25,b= 9
a/b= 2
(float)a/b= 2.7777777
除了 (float)a/b 的寫法之外,以下兩種寫法也成立:
(1) a / (float) b //將整數b強制轉換成浮點數,再以整數a除之。
(2) (float) a / (float) b //將整數a,b 同時強制轉換成浮點數後運算。
三、由鍵盤輸入資料 Scanner
我們先了解撰寫的基本架構:
以下我們實例,並結合先前講到的print與println的差異:
OUTPUT:
請輸入姓名 4x // 斜線粗體為輸入的字串
歡迎 4x
常用的相對應型態之函數
輸入多項資料時,可以只宣告一個Scanner 類別的物件,再用Scanner 類別提供的成員函數,將鍵盤中輸入的資料指定給不同型態的變數存放,不需要宣告多個Scanner 類別物件。
如以下片段範例:
五、next()與nextLine()
OUTPUT:
請輸入姓名scheng // 斜線粗體為輸入的字串
請輸入年齡19
歡迎, scheng, 您目前 19 歲。
OUTPUT:
請輸入姓名scheng // 斜線粗體為輸入的字串
h //第0個字元為 ‘s’ ;第1個字元為 ‘c’ 以此類推。