a
假设有 type ,这三者之间有什么区别ArrayList<T>
吗?(除了编译器在 #3 中抱怨未经检查的操作这一事实之外。)
1.
ArrayList<T> a1 = new ArrayList<T> (a);
2.
ArrayList<T> a2 = new ArrayList<T> ();
a2.addAll (a);
3.
ArrayList<T> a3 = (ArrayList<T>) (a.clone());
a
假设有 type ,这三者之间有什么区别ArrayList<T>
吗?(除了编译器在 #3 中抱怨未经检查的操作这一事实之外。)
1.
ArrayList<T> a1 = new ArrayList<T> (a);
2.
ArrayList<T> a2 = new ArrayList<T> ();
a2.addAll (a);
3.
ArrayList<T> a3 = (ArrayList<T>) (a.clone());
克隆会创建一个新实例,其中包含相同的元素。克隆适用于集合。所以最好不要使用它们。
ArrayList<T> a1 = new ArrayList<T> (a);
是浅拷贝,速度相对较快。
该主题可以进一步帮助您