zoukankan      html  css  js  c++  java
  • 数组、集合和可变长参数

    import java.util.Arrays;
    import java.util.List;
    
    public class Test1 {
    	public List<Test> tests;				//定义变量名为tests,类型为Test的集合;
    	
    	//构造器1:
    	public Test1(List<Test> tests) {		//参数为集合
    		this.tests=tests;					//为成员变量tests赋值
    		System.out.println("---构造器1:集合的大小为:"+tests.size());
    	}
    	
    	//构造器2:
    	public Test1(Test... tests) {			//参数为可变参数,所有参数的类型为Test类,可变参数并非一个数组,而是N个元素
    		this(Arrays.asList(tests));			//调用构造器1,将可变长参数数组转换成集合
    		System.out.println("---构造器2:转换后的集合第一个元素的A属性是:"+Arrays.asList(tests).get(0).getA());
    	}
    	
    	public List<Test> getTests() {
    		return tests;
    	}
    
    	public void setTests(List<Test> tests) {
    		this.tests = tests;
    	}
    	
    	static class Test{
    		private Integer a;
    		private Integer b;
    		public Integer getA() {
    			return a;
    		}
    		public void setA(Integer a) {
    			this.a = a;
    		}
    		public Integer getB() {
    			return b;
    		}
    		public void setB(Integer b) {
    			this.b = b;
    		}
    		public Test(Integer a, Integer b) {
    			super();
    			this.a = a;
    			this.b = b;
    		}	
    	}
    	
    	public static void main(String[] args) {
    		Test test=new Test(1,2);				//Test类
    		Test[] a= {test,test,test};				//类型为Test的数组
    		List<Test> tests = Arrays.asList(a) ;	//将数组转换成集合
    		
    		Test1 test1=new Test1(tests);			//传入参数为集合,只触动构造器1
    		System.out.println("以上是构造test1时所发生的事情,test1实例的方法返回一个Test集合:"+test1.getTests()+"
    ");
    		
    		Test1 test2=new Test1(test,test,test);	//传入参数为不定个数的Test类,触动构造器2
    		System.out.println("以上是构造test2时所发生的事情,test2实例:"+test2.toString());
    		
    	}
    }
    

      

  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/amoyzhu/p/8473012.html
Copyright © 2011-2022 走看看