千思

          2009年9月8日 #

          一個Java數據類型的問題

          class Demo
          {
              
          public static void main(String [] args)
              
          {
                  System.out.println(
          123);
                  System.out.println(
          "123");
              }

          }
           
          上面的打印結果是一樣的哦。

          在第一個System.out.println(123);中123 是 int類型的
          在第一個System.out.println(“123”);中"123 "是 String類型的

          那為什么會輸出一樣的結果呢?

          JVM會自動將這個int類型包裝成Integer類型,然后調用其toString方法
          "123"是String類型,這里也是會自動調用它的toString方法

          所以結果是一樣的

          123是int類型,它是JAVA的基礎數據類型,不能用.來調用方法,它也不是對象。
          如果非要寫,可以:Integer.valueOf(123).toString();

          在System.out.println(Object obj);的時候..參數是一個對象,如果是基本數據類型,JVM會自動裝箱。然后會自動調用該對象的toString()方法
          每個類都有toString()方法,如果你沒寫,會默認繼承自Object類的toString方法

          posted @ 2009-09-08 11:00 幻櫻釋 閱讀(195) | 評論 (2)編輯 收藏

          主站蜘蛛池模板: 景宁| 肥城市| 黄山市| 扎囊县| 南漳县| 襄汾县| 武陟县| 铜陵市| 罗定市| 昂仁县| 肃南| 鄂尔多斯市| 哈巴河县| 东山县| 巫山县| 威信县| 巧家县| 西平县| 武城县| 金坛市| 五寨县| 基隆市| 开江县| 安远县| 西吉县| 姚安县| 凤山县| 扬州市| 昭觉县| 句容市| 望谟县| 宝应县| 韶山市| 朝阳区| 松原市| 唐河县| 象州县| 田东县| 纳雍县| 长寿区| 白水县|