當Java程式在進行指派或運算時,精度小的類型自動轉換為精度大的資料類型,這個就是 自動類型轉換。
char - int - long - float - double byte - short - int - long - float- double
有多種類型的資料混合運算時,系統首先自動将所有資料轉換成容量最大的那種資料類型,然後再進行計算。
當我們把精度(容量)打的資料類型指派給精度(容量)小的資料類型時,就會報錯,反之就會進行自動類型轉換。
(byte, short) 和 char 之間不會互相自動轉換,可以計算,不過首先要轉換為int類型
boolean 不參與轉換
自動提升原則:表達式結果的類型自動提升為 操作數中最大的類型
自動類型轉換的逆過程,将容量大的資料類型轉為容量小的資料類型。使用時要加上強制類型轉換符<code>()</code> , 但可能造成精度降低或溢出,格外要注意
當進行資料的大小從 大 ---> 小,就需要使用到強制轉換
強轉符号隻針對于最近的操作數有效,往往會使用小括号提升優先級
char 類型可以儲存 int的常量值,但不能儲存int的變量值,需要強轉
byte和 short,char類型在進行運算時,當做 int類型處理。
二、基本資料類型和 String類型的轉換
我們經常需要将基本資料類型轉成 String類型,或者将 String類型轉成基本資料類型
基本類型轉 String類型
文法:将基本類型的值 <code>+ ""</code> 即可
String 類型轉基本資料類型
文法:通過基本類型的包裝類調用 <code>parseXX</code> 方法即可
在将 String類型轉成基本資料類型時,要確定 String類型能夠轉成有效的資料,比如 我們可以把 "123",轉成一個整數,但是不能把 "hello" 轉成一個整數。
如果格式不正确,就會 抛出異常,程式就會終止。