import java.util.Set;
import java.util.HashSet;
import java.util.Iterator;
class A
{
public int i = 0;
}
public class Test {
public static A [] a = new A[5];
public static void main(String[] args) {
Set<A> set = new HashSet<A>();
Iterator<A> it = set.iterator();
for(int i = 0;i < a.length;i ++)
{
a[i] = new A();
a[i].i = i;
set.add(a[i]);
}
while(it.hasNext())
{
System.out.println(it.next().i);
}
}
}
为什么得不到结果,用debug调试器观察的时候 it的next总是为null!这是怎么回事?
import java.util.HashSet;
import java.util.Iterator;
class A
{
public int i = 0;
}
public class Test {
public static A [] a = new A[5];
public static void main(String[] args) {
Set<A> set = new HashSet<A>();
Iterator<A> it = set.iterator();
for(int i = 0;i < a.length;i ++)
{
a[i] = new A();
a[i].i = i;
set.add(a[i]);
}
while(it.hasNext())
{
System.out.println(it.next().i);
}
}
}
为什么得不到结果,用debug调试器观察的时候 it的next总是为null!这是怎么回事?
import java.util.HashSet;
import java.util.Iterator;
class A
{
public int i = 0;
}
public class Test {
public static A [] a = new A[5];
public static void main(String[] args) {
Set <A> set = new HashSet <A>();
for(int i = 0;i < a.length;i ++)
{
a[i] = new A();
a[i].i = i;
set.add(a[i]);
}
Iterator <A> it = set.iterator();
while(it.hasNext())
{
System.out.println(it.next().i);
}
}
}