美文网首页
Effective Java - 慎用可变参数

Effective Java - 慎用可变参数

作者: DZQANN | 来源:发表于2022-07-30 22:24 被阅读0次

    第53条 慎用可变参数

    1. 如果可变参数要求至少要求一个参数的话,可以使用这种样式

      public int min(int firstArg, int... remainingArgs) {
        int min = firstArg;
        for(int arg: remainingArgs) {
          if (arg < min) {
            min = arg;
          }
        }
        return min;
      }
      
    2. 可变参数可能会带来一些性能问题,如果对应能有一定要求可以使用方法重载

      public void foo() {}
      public void foo(int a1) {}
      public void foo(int a1, int a2){}
      public void foo(int a1, int a2, int... rest){}
      

    思考

    1. Guava的很多构造方法就采用了第2点的格式

    第54条 返回零长度的数组或集合, 而不是null

    1. 如果担心每次返回空列表都会创建一个新的对象而带来开销,可以使用Collections里面的emptyListemptySetempetMap方法,只不过可能不会带来多大的性能提升

    相关文章

      网友评论

          本文标题:Effective Java - 慎用可变参数

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