import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;import com.sun.xml.internal.bind.v2.schemagen.xmlschema.List;public class IteratorReverse {
public static Iterator reverse(List list){
Collections.reverse(list);
return list.iterator();
}
public static void main(String[] args) {
List list = (List) new ArrayList();
list.add("1"); list.add("2"); list.add("3");
for(Object obj: reverse(list))
System.out.println(obj + ",");
}
}请说明一下错误的理由。
import java.util.Collections;
import java.util.Iterator;import com.sun.xml.internal.bind.v2.schemagen.xmlschema.List;public class IteratorReverse {
public static Iterator reverse(List list){
Collections.reverse(list);
return list.iterator();
}
public static void main(String[] args) {
List list = (List) new ArrayList();
list.add("1"); list.add("2"); list.add("3");
for(Object obj: reverse(list))
System.out.println(obj + ",");
}
}请说明一下错误的理由。
这个写法错误的吧
List list = new ArrayList();
或者
List<String> list = new ArrayList<String>();
List 是ArrayList的父接口 不需要强制转换
其次.迭代器用法不对import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;public class IteratorReverse {
public static Iterator reverse(List list) {
Collections.reverse(list);
return list.iterator();
} public static void main(String[] args) {
List list = (List) new ArrayList();
list.add("1");
list.add("2");
list.add("3");
Iterator it = reverse(list);
while(it.hasNext()){
System.out.println(it.next() + ",");
}
}
}
第二, 引错包了, 应该是util 里的 List