Java可变参数列表

我们在编程时经常使用以下代码
Arrays.asList(value_1, value_2, value_3, ... value_n);
可以看作接受确定个数形参的函数,这就是Java的可变参数列表,是在Java SE5 引入的新特性

  • 可变参数列表其实是一个数组,作为函数f()的形参时,函数f()既可以接受一个数组,也可以接受可变参数列表,编译器自动将可变参数列表变为数组
  • 可变参数列表声明如下 void f(int... is);
import java.util.Arrays;

public class Main {

    public static void f(int... is ) {
        System.out.println(Arrays.toString(is));
    }
    
    public static void g(int[] is) {
        System.out.println(Arrays.toString(is));
    }
    
    public static void main(String... args) {        //可以把String[] 变成String...
        int[] a = new int []{1,2,3,4};
        f(1,2,3,4);
        f(a);
        //g(1,2,3,4);   Compile Error
        g(a); 
    }

}

输出结果:

[1, 2, 3, 4]
[1, 2, 3, 4]
[1, 2, 3, 4]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,918评论 0 38
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,541评论 1 51
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 19,082评论 17 410
  • 每天打卡感觉是我的一项任务,每次都不能以很轻松的心态来完成。题目也经常是想不到。今天突然想到生活。对生活的两个字的...
    思_a860阅读 195评论 0 0