java iterator赋值问题

能否用一个iterator的值赋值给另一个呢?我看见貌似是不能,那有什么方法实现这一点么?(iteratori=j(j是一个已知的iterator))问题没说清楚,赋值本... 能否用一个iterator的值赋值给另一个呢?我看见貌似是不能,那有什么方法实现这一点么?
(iterator i = j ( j 是一个已知的iterator ) )
问题没说清楚,赋值本身没有问题,关键是我想要值传递,上面的语句是指针传递,修改了j顺便就把i修改了。有无只修改i不会影响j的值的方法
展开
 我来答
jimmyc2006
推荐于2016-07-07 · TA获得超过1153个赞
知道小有建树答主
回答量:572
采纳率:100%
帮助的人:649万
展开全部

能将一个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

缘竹临溪
2013-07-21 · TA获得超过1123个赞
知道小有建树答主
回答量:579
采纳率:0%
帮助的人:417万
展开全部
这是没问题的,下面代码就是把或得的迭代器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());
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yesterday7000
2013-07-21 · 超过26用户采纳过TA的回答
知道答主
回答量:302
采纳率:0%
帮助的人:107万
展开全部
将j中的值遍历出来,放入list中,在iterator i = list.iterator();

这样就可以了吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式