java的构造函数

使用自定义类初始化构造函数:
sx = new Sequence(lk.get(i));

public class Sequence {
	private ArrayList<ItemSet> sequence;
	public Sequence(Sequence seq) {
		//sequence = new ArrayList<>(seq.toArrayList()); 添加的是引用
		sequence = new ArrayList<>();
		for (int i = 0; i < seq.size(); ++i) {
			sequence.add(new ItemSet(seq.get(i)));
		}
	}
}

直接使用new arraylist,添加的是ItemSet 的引用,没有复制内容。

public class ItemSet {
	private ArrayList<String> itemSet;
	public ItemSet(ItemSet e) {
		itemSet = new ArrayList<>(e.toArrayList());
//		itemSet = new ArrayList<>();
//		for (int i = 0; i < e.size(); ++i) {
//			itemSet.add(new String(e.get(i)));
//		}
	}
}

在ItemSet 中,可以直接使用初始化,因为ArrayList的元素是String ,所以会直接复制(?)

posted on 2015-09-09 23:36  一五一十  阅读(171)  评论(0)    收藏  举报

导航