Mark's Java Blog
          MyEclipse, Java EE, Spring, Struts, Hibernate, JPA, SWT, Swing, AJAX, JavaScript,SOA
          突然有人問起,自己做了些測驗,把結果記錄下來。

          java的幾種數值基本類型:int,short,long,float,double

          測試代碼:

           public static void main(String[] args) {

            short x = 100;
            long b = 2;
            int a = 2;
            double y=1.1;
            float z=(float) 1.2;
            double c=1.1;
            float d=(float) 1.2;
            
            a=x+a;
            x+=1.1;
            b=b+a;
            y=y-1;
            z=z-1;
            c=c+1;
            d=d+1;
            
            System.out.println(a);
            System.out.println(x);
            System.out.println(b);
            System.out.println(z);
            System.out.println(y);
            System.out.println(c);
            System.out.println(d);

            c=c+d;
            System.out.println(c);
            c=c-d;
            System.out.println(c);
            d=(float) (d-1.1);
            System.out.println(d);
           }

          運行結果:

          102
          101
          104
          0.20000005
          0.10000000000000009
          2.1
          2.2
          4.3000000476837155
          2.0999999999999996
          1.1

          測試說明:

          不同類型數據做計算時按照計算中最大范圍數據類型返回,例如:a=x+a;(如果負值對象是較小范圍的類型就需要強轉類型,否則會報錯)
          double類型做加時運算精度準確,做減運算時有精度偏差,且和float類型相互作加減操作都會出現精度缺失;
          +=符號做運算不牽扯類型轉換問題,按照負值對象的類型返回。

          posted on 2008-05-09 11:44 Mark 閱讀(532) 評論(0)  編輯  收藏 所屬分類: Java SE
           
          主站蜘蛛池模板: 宜良县| 广东省| 嵊州市| 柏乡县| 邹平县| 永春县| 渝中区| 瓮安县| 南郑县| 临澧县| 浮梁县| 涞水县| 罗定市| 遂平县| 昆山市| 鄂温| 沂水县| 霍山县| 仁寿县| 饶河县| 永德县| 锦州市| 修武县| 靖州| 方正县| 凤冈县| 漾濞| 沧源| 和平区| 房山区| 广平县| 定州市| 老河口市| 合川市| 盐亭县| 富平县| 邵阳市| 福建省| 黄陵县| 民县| 张家口市|