Java的包装类
Java的包裝類
? ? ? ? ? 包裝類——Wrapper Class
? ? ? ? ??Java語言是一個面向對象的語言,但是Java中的基本數據類型卻是不面向對象的,這在實際使用時存在很多的不便。
? ? ? ? ??為了解決這個不足,在設計類時為每個基本數據類型設計了一個對應的類進行代
表,這樣八個和基本數據類型對應的類統稱為包裝類(WrapperClass),也稱為外覆類或數據類型類。
? ? ? ? ??包裝類均位于Java.lang包,包裝類和基本數據類型的對應關系如下表所示:
?
? ? ? ? ??在這八個類名中,除了Integer和Character類,其它,六個類的類名和基本數據類型一致,只是類名的第一個字母大寫即可。
? ? ? ? ??int——Integer
? ? ? ? ??char——Character
??????
? ? ? ? ??為什么要有包裝類?
? ? ? ? ??AVA是一種面向對象語言,java中的類把方法與數據連接在一起,構成了自包含式的處理單元。
? ? ? ? ??但是,在JAVA中不能定義基本類型(primitive? type)對象,為了能將基本類型視為對象進行處理,并能連接相關的方法,java為每個基本類型都提供了包裝類。
? ? ? ? ??以int為例,你可以用int i = 4;直接賦值,把 i 當作一個普通變量操作,可以加減乘除等等。
? ? ? ? ??如果,想要像操作對象一樣操作它,如讓它告訴你自己的取值范圍應該用什么方
法,讓它告訴你將自己轉換成特定的進制應該用什么方法,或者字符串該怎么做,這就需要對象。
? ? ? ? ??所以說,對象可以極大的豐富對基本類型數據的操作,也就是說,Java中的基本數據類型包裝類極大的豐富了對基本數據類型的操作。
? ? ? ? ??具體方法,每一種基本數據類型包裝類的使用可以查詢API文檔即可。
??????
? ? ? ? ??包裝類作用
? ? ? ? ??1、作為和基本數據類型對應的類類型存在,方便涉及到對象的操作,比如:泛型
? ? ? ? ??List<Integer>nums;
? ? ? ? ??這里<>需要的是類,如果使用int,就會報錯。
? ? ? ? ??2、包含每種基本數據類型的相關屬性如最大值、最小值等,以及相關的操作方
法。
? ? ? ? ??3、包裝類把基本類型數據轉換為對象,方便對基本數據類型的操作,通過包裝類
轉換成為對對象的操作。
? ? ? ? ??4、提供了一系列實用的方法,比如:在各種類型間轉化,通過各種方法的調用即
可實現。
?
? ? ? ? ??包裝類的構造方法
? ? ? ? ??1、所有包裝類都可將與之對應的基本數據類型作為參數,來構造它們的實例。
? ? ? ? ??2、除Character類外,其他包裝類可將一個字符串作為參數構造它們的實例。
??????
? ? ? ? ??注意事項
? ? ? ? ??Boolean包裝類
? ? ? ? ??當構造方法參數為String類型時,若該字符串內容為true(不考慮大小寫),則該
Boolean對象表示true,否則表示false。
? ? ? ? ??Number包裝類
? ? ? ? ??當構造方法參數為String類型時,字符串不能為null,并且,該字符串必須可解析為相應的基本數據類型的數據,否則編譯通過,運行時NumberFormatException異常。
總結
- 上一篇: Java非访问修饰符
- 下一篇: Java之Number类