java iterator赋值问题
能否用一个iterator的值赋值给另一个呢?我看见貌似是不能,那有什么方法实现这一点么?(iteratori=j(j是一个已知的iterator))问题没说清楚,赋值本...
能否用一个iterator的值赋值给另一个呢?我看见貌似是不能,那有什么方法实现这一点么?
(iterator i = j ( j 是一个已知的iterator ) )
问题没说清楚,赋值本身没有问题,关键是我想要值传递,上面的语句是指针传递,修改了j顺便就把i修改了。有无只修改i不会影响j的值的方法 展开
(iterator i = j ( j 是一个已知的iterator ) )
问题没说清楚,赋值本身没有问题,关键是我想要值传递,上面的语句是指针传递,修改了j顺便就把i修改了。有无只修改i不会影响j的值的方法 展开
展开全部
能将一个iterator赋值给另一个,为什么不能呢?
public static void main(String[] args) {
List<String> test = new ArrayList<String>();
test.add("aaa");
test.add("bbb");
test.add("ccc");
Iterator it = test.iterator();
Iterator it2 = it;
while(it2.hasNext()){
System.out.println(it2.next());
}
}
aaa
bbb
ccc
更多追问追答
追问
表述不太清楚,赋值是没问题,不过是指针赋值,我想要值传递,就是修改it2不会影响it
追答
public static void main(String[] args) {
List<String> test = new ArrayList<String>();
test.add("aaa");
test.add("bbb");
test.add("ccc");
Iterator it = test.iterator();
Iterator it2 = test.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
while(it2.hasNext()){
System.out.println(it2.next());
}
}
每次调用test.iterator()都会生成一个新的Iterator
展开全部
这是没问题的,下面代码就是把或得的迭代器it赋给its了
public class MyTests{
public static void main(String args[]){
List list = new ArrayList();
list.add("abc");
list.add("def");
list.add("ghi");
Iterator it = list.iterator();
Iterator its = it;
while(its.hasNext()){
System.out.println(its.next());
}
}
}
public class MyTests{
public static void main(String args[]){
List list = new ArrayList();
list.add("abc");
list.add("def");
list.add("ghi");
Iterator it = list.iterator();
Iterator its = it;
while(its.hasNext()){
System.out.println(its.next());
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将j中的值遍历出来,放入list中,在iterator i = list.iterator();
这样就可以了吧
这样就可以了吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询