问题遇到的现象和发生背景
练习泛型修饰符时构建ListUtil工具类使用迭代器方法遍历失败
问题相关代码,请勿粘贴截图
工具类
package A02_genericDemo2;
import java.util.ArrayList;
import java.util.Iterator;
public class ListUtil {
private ListUtil() {
}
//泛型修饰符要写在修饰类之后
public static<E> void addAll(ArrayList<E> list,E e1,E e2){
list.add(e1);
list.add(e2);
}
//在调用方法时可以添加任意个元素
public static<E> void addAll2(ArrayList<E> list,E...e){
//e的底层是一个数组
//1.for遍历
/* for (int i = 0; i < e.length; i++) {
list.add(e[i]);
}*/
//2.增强for遍历
/*for (E tempEle : e) {
list.add(tempEle);
}*/
//3.迭代器遍历
Iterator<E> it = list.iterator();
while(it.hasNext()){
E e1= it.next();
list.add((E)e1);
}
}
}
测试类
package A02_genericDemo2;
import java.util.ArrayList;
import java.util.Iterator;
public class Test01 {
public static void main(String[] args) {
ArrayList<String> list1=new ArrayList<>();
ListUtil.addAll2(list1,"nihao","zixiangpeng","zhangsan","王五");
System.out.println(list1);
}
}