Java 中作为形参的 "..."

来源:互联网 发布:2016淘宝报名双11入口 编辑:程序博客网 时间:2024/05/09 05:08

个人理解:“…”在形参中的作用即为标明该参数实际是个参数列表,可接受0…n个该类型的参数,有点类似于参数数组,但比数组灵活,测试代码如下:

import java.util.Collection;import java.util.Collections;import com.damontung.dgz.utils.*;/** *  *//** * @author guangzhd * */public class Main {    static Print mPrint = Print.getPrintInstance(Main.class);    static DateUtils dateUtils = new DateUtils();    /**     *      */    public Main() {        // TODO Auto-generated constructor stub    }    /**     * 不定长参数列表  ... ,类似于 String【】,优势在于:     * 实参可以是一个 String,也可以为空,或者多个String列表,     * 而直接使用String【】的话,则实参必须为String[]类型,不能为空,不能是String     * @param strings     */    private void testString(final String ... strings){        mPrint.printlnMessage(strings.length);        for(String string:strings){            mPrint.printlnMessage(string);        }    }    private void testString2(final String[] strings){        mPrint.printlnMessage(strings.length);        for(String string:strings){            mPrint.printlnMessage(string);        }    }    /**     * @param args     */    public static void main(String[] args) {        // TODO Auto-generated method stub        Main test = new Main();        String string1 = "first string";        test.testString(string1);        //test.testString2(string1);//error,类型错误        String[] strings = new String[5];        for(int i = 0; i < strings.length; i++){            strings[i] = new String(i + "->String");        }        test.testString(strings);        test.testString2(strings);        test.testString();        //test.testString2();//error    }}
0 0
原创粉丝点击