为什么不能便利啊,我想用Iterator便利该怎么写呢
package src;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
public class Test {
/**
* @param args
*/
static void print(Collection e){
Iterator it=e.iterator();
while(it.hasNext()){
Object o=it.next();
System.out.println(o);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] s=new int[]{3,6,9,0,1,63,23};
Arrays.sort(s);
print(s);
}
}
------解决方案--------------------
数组不是Collection的子类,呵呵,所以你的print()方法实际上没有收到Collection的引用“e”,你要再传入之前先把数组装到容器里,比如List。
package src;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
public class Test {
/**
* @param args
*/
static void print(Collection e){
Iterator it=e.iterator();
while(it.hasNext()){
Object o=it.next();
System.out.println(o);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] s=new int[]{3,6,9,0,1,63,23};
Arrays.sort(s);
List list = new ArrayList();
for(int i = 0;i <s.length;i++){
list.add(s[i]);
}
Test.print(list);
}
}
这个例子的效率不高,你可以再改一改