Java佈爾值Boolean和boolean之間轉換實例用法
1、Boolean和boolean區別
Boolean是類,而boolean是基本數據類型,Boolean 定義出來的是對象,可以當對象調用,boolean 定義出來的是數據類型,隻能當數據類型調用。Boolean是佈爾類型包裝器。這個涉及到jdk5以後的新特性,自動裝箱。
2、自動裝箱和自動拆箱
在許多情況下包裝與解包裝是由編譯器自行完成的(在這種情況下包裝成為裝箱,解包裝稱為拆箱)。
自動裝箱:簡單的理解為將基本數據類型封裝為對象類型。
自動拆箱:簡單的理解為將對象重新轉化為基本數據類型。
例如,
public static void main (String []args){ Boolean flag=true; if( flag=false){ System.out.println("true"); }else{ System.out.println("false"); } }
註意:flag先自動拆箱,賦值為true,
if判斷時,flag自動裝箱,賦值為false,然後因為是在if條件語句之中,又將flag自動拆箱,此時的值為false,條件判斷不成立。最後輸出false。
3、Boolean和boolean之間轉換作用
當調用重載方法時,它會產生不同的效果。因為要調用的方法是由參數的靜態類型決定的,在boolean和Boolean之間轉換時,可以改變被調用的方法。
例如,
class Ideone { public static void main (String[] args) { final Boolean b = true; foo((boolean) b); foo(b); } public static void foo(boolean b) { System.out.println("primitive"); } public static void foo(Boolean b) { System.out.println("wrapper"); } }
知識點補充:
boolean是主類型,Boolean是對boolean封裝後產生的一個類型。轉化:
boolean -》Boolean : boolean b = false; Boolean B = new Boolean(b); Boolean -》boolean : Boolean B = new Boolean(false); boolean b = B.booleanValue();
到此這篇關於Java佈爾值Boolean和boolean之間轉換實例用法的文章就介紹到這瞭,更多相關Java 佈爾值Boolean和boolean之間轉換內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- java Wrapper類基本用法詳解
- Java中Volatile關鍵字能保證原子性嗎
- Java-String類最全匯總(上篇)
- java數據類型和運算符的深入講解
- Java類中字段可以不賦予初始值的原因分析