java 判断是否整形_java判断是否基本类型
基本類型:
Java的基本類型有八種:int, double, float, long,
short, boolean, byte, char, void.
基本類型屬于Class的一個子集。
因此:
.isPrimitive()是用來判斷是否是基本類型的:void.isPrimitive() //true;
.class用來返回該類的Class對象的實例:int.class ==
intclass //基本類型
int.class.isPrimitive //true
Integer.class == Integer //包裝類
Integer.class.isPrimitive //false
.TYPE是返回基本類型的Class實例,所以:int.class ==
Integer.TYPE //true;
除了int Integer,類似的有 float Float; double
Double; string String等。
基本類存儲在棧中,包裝類村住在堆中,棧是LIFO(后進先出),基本類的存取速度更快。
JAVA 虛機自動完成基本類與包裝類的轉換
基本類型的包裝類都采用final修飾方法,因此無法繼承它們擴展的新類,也無法重寫它們的方法。
包裝類:
包裝類是基本類的擴展
int i=2, Integer i = new Integer(2);
其實這個過程是由自動轉換的,定義了int i=2就不用關心將其轉換為包裝類的過程。這就是為什么基本類型不需要new,例如 int i
= new int() i =2;是多余的。
此外,HashMap
ArrayList等不能將基本類加入其中,而只能加入包裝類。一個典型的實例:
Map
Object> testMap = new HashMap
Object>();就是錯誤的
而應該把int換成Integer。
最后,如何判斷一個對象所屬的類型:
常見的一個典型錯誤是
object.getClass.isPrimitive()
許多人指望靠此判斷object是不是一個數字或者布爾。其實這樣返回的是該對象的類型,如java.lang.double,而非類型的基本類型,因此是錯誤的。
正確的步驟是:
object instanceof String
Number
Boolean
Character
null
總結
以上是生活随笔為你收集整理的java 判断是否整形_java判断是否基本类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java servicefactory_
- 下一篇: java中volatile的含义_jav