如何判斷Object對象的原類型

我們以一個Map集合爲例:
  

Map<String, Object> map = new HashMap<>();
map.put("1", 1);
map.put("2", 2.0);
map.put("3", "3");
System.out.println(map.get("1") instanceof Integer);//true
System.out.println(map.get("2") instanceof Double); //true
System.out.println(map.get("3") instanceof String); //true

其他類型不一一列舉,當你直接輸出類型的時候會帶上前面的包名,
原理是獲得類文件,再獲取它的類名:
    

Map<String, Object> map = new HashMap<>();
map.put("1", 1);
map.put("2", 2.0);
map.put("3", "3");
System.out.println(map.get("1").getClass().getName());    //java.lang.Integer
System.out.println(map.get("2").getClass().getName());    //java.lang.Double
System.out.println(map.get("3").getClass().getName());    //java.lang.String

 

發佈了30 篇原創文章 · 獲贊 78 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章