ArrayList使用和不使用泛型的简单比较


public class Generic {
public static void main(String[] args) {
//
/*ArrayList不使用泛型
好处:1.在add时,可以存储任何数据类型
坏处:1.在需要使用存储数据类型的时候需要向下转型,如果没有做instanceof 就容易报ClassCastException
* */
/*ArrayList使用泛型
好处1.将运行期可能出现的问题提前的到编译器,如ArrayList的泛型是String就只能存储String类型,存储别的类型就会报错
2.可以使用泛型中数据类型特有的方法:
坏处1.只能存储一种类型的数据
* */
//不使用泛型
demo01();
//使用泛型
demo02();
}

private static void demo02() {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("天才");
arrayList.add("第一步");
arrayList.add("天才");
Iterator<String> iterator = arrayList.iterator();
while (iterator.hasNext()){
String next = iterator.next();
System.out.println(next);
System.out.println(next.length());//String特有的方法
}
}

private static void demo01() {
ArrayList arrayList = new ArrayList();
arrayList.add("天才");
arrayList.add("第一步");
arrayList.add(1235);
arrayList.add(true);
Iterator iterator = arrayList.iterator();
while (iterator.hasNext()){
Object next = iterator.next();
System.out.println(next);
if (next instanceof String){
String a=(String) next;
int length = a.length();
System.out.println(length);
}
}
}
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM