美文网首页
javaSE - 009 - Integer陷阱和可变参数

javaSE - 009 - Integer陷阱和可变参数

作者: 离子来了 | 来源:发表于2016-04-03 20:15 被阅读29次

    Integer陷阱

    public static void main(String[] args) {
      Integer a = 200;
      Integer b = 200;
      if (a == b) {
       System.out.println("a == b");
      } else {
       System.out.println("a != b");
      }
    
      a = 100;
      b = 100;
      if (a == b) {
       System.out.println("a == b");
      } else {
       System.out.println("a != b");
      }
     }
    输出结果:
    a != b
    a == b
    看源码得:Integer将[-128,127]的数值做了缓存的。要使用直接用,不会创建新的Integer对象,其他原生类型可能也有类似的问题
    

    可变参数

    可变参数只能作为最后一个参数

    private static int sumAdd(int... nums) {
      int sum = 0;
      for (int num : nums) {
       sum += num;
      }
      return sum;
     }
    
     public static void main(String[] args) {
      System.out.println(sumAdd(1, 2, 3, 4, 5, 6));
     }
    

    相关文章

      网友评论

          本文标题:javaSE - 009 - Integer陷阱和可变参数

          本文链接:https://www.haomeiwen.com/subject/vtyulttx.html