1、說明一
int 是關鍵字,Integer是包裝類,Number是所有數字了的基類(父類)。所以,Number是Integer的基礎,Integer是int的基礎,也稱Integer是int的原型類。通稱,包裝類是基礎數據類型的原型類。
如:System.out.println(Integer.TYPE); // 結果輸出為 int
延伸:
包裝類:Integer、Long、Short、Boolean、Byte、Character、Double、Float
基礎類型:int、long、short、byte、double、float、boolean、char
String對象。
2、說明二
java判斷數據類型的2中形式
(1)強轉為Object后,((Object)a) instanceof Integer 判斷。
(2)賦值給Object對象后,object1 instanceof String判斷。
java按照(2)中形式,判斷數據類型的代碼案例如下:
public class Testbzclass { public static void main(String[] args) { Object object1 = null; int a = 1; long b = 2; short c = 3; boolean d = true; byte e = 4; char f = 'p'; double g = 1.22; float h = 3.0f; String s = "wahaha"; Integer i = new Integer(7); // 創建int原型類對象 object1 = a; object1 = b; object1 = c; object1 = d; object1 = e; object1 = f; object1 = g; object1 = h; object1 = s; object1 = i.byteValue(); // 以byte類型返回該Integer object1 = i.intValue(); // 以int型返回該Integer object1 = i.shortValue(); // 以short型返回該Integer object1 = i.toString(); // 以String對象返回該Integer object1 = null; // 未知類型;自定義類型 if (object1 instanceof Integer) { System.out.println("is Integer"); } else if (object1 instanceof Long) { System.out.println("is Long"); } else if (object1 instanceof Short) { System.out.println("is Short"); } else if (object1 instanceof Boolean) { System.out.println("is Boolean"); } else if (object1 instanceof Byte) { System.out.println("is byte"); } else if (object1 instanceof Character) { System.out.println("is Character"); } else if (object1 instanceof Double) { System.out.println("is Double"); } else if (object1 instanceof Float) { System.out.println("is Float"); } else if (object1 instanceof String) { System.out.println("is String"); } else { System.out.println("unknown type, or yourself type"); } } }
復雜版
public class Testbzclass { public static void main(String[] args) { Object object1 = null; int a = 1; long b = 2; short c = 3; boolean d = true; byte e = 4; char f = 'p'; double g = 1.22; float h = 3.0f; String s = "wahaha"; Integer i = new Integer(17); // 創建int原型類對象 // 輸出原來的數據 System.out.println("object1=" + object1); System.out.println("a=" + a); System.out.println("b=" + b); System.out.println("c=" + c); System.out.println("d=" + d); System.out.println("e=" + e); System.out.println("f=" + f); System.out.println("g=" + g); System.out.println("h=" + h); System.out.println("s=" + s); System.out.println("i=" + i); System.out.println();// 換行 object1 = a; object1 = b; object1 = c; object1 = d; object1 = e; object1 = f; object1 = g; object1 = h; object1 = s; object1 = i.byteValue(); // 以byte類型返回該Integer object1 = i.intValue(); // 以int型返回該Integer object1 = i.shortValue(); // 以short型返回該Integer object1 = i.toString(); // 以String對象返回該Integer object1 = Integer.toBinaryString(i); // 以String對象返回i轉為二進制的字符串 object1 = Integer.toHexString(i);// 以String對象返回i轉為十六進制的字符串 object1 = Integer.toOctalString(i);// 以String對象返回i轉為八進制的字符串 // object1 = null; // 未知類型;自定義類型 // 判斷數據類型 if (object1 instanceof Integer) { System.out.println(object1 + " is Integer"); } else if (object1 instanceof Long) { System.out.println(object1 + " is Long"); } else if (object1 instanceof Short) { System.out.println(object1 + " is Short"); } else if (object1 instanceof Boolean) { System.out.println(object1 + " is Boolean"); } else if (object1 instanceof Byte) { System.out.println(object1 + " is byte"); } else if (object1 instanceof Character) { System.out.println(object1 + " is Character"); } else if (object1 instanceof Double) { System.out.println(object1 + " is Double"); } else if (object1 instanceof Float) { System.out.println(object1 + " is Float"); } else if (object1 instanceof String) { System.out.println(object1 + " is String"); } else { System.out.println("unknown type, or yourself type"); } } }