java 迭代器复制_java-使用for语句和while语句向前移动迭代器...

for循环的正确语法是:

for (Iterator it = ...; it.hasNext(); ){

//...

}

(代码中的前面的声明以及for循环标题中的多余分号都是多余的.)

无论您使用此语法还是while循环都取决于您的口味,二者的含义完全相同. for循环的通用语法为:

for (; ; ) { ; }

等效于:

;

while () { ; ; }

编辑:实际上,如果使用init语句声明变量,则上述两种形式并不完全等效.在这种情况下,迭代器变量的范围将有所不同.对于for循环,在while循环的情况下,作用域仅限于循环本身,但是,作用域扩展到了封闭块的末尾(不足为奇,因为声明位于循环之外).

另外,正如其他人指出的那样,在较新版本的Java中,for循环有一种简写形式:

for (Iterator it = myIterable.iterator(); it.hasNext(); ) {

Foo foo = it.next();

//...

}

可以写成:

for (Foo foo : myIterable) {

//...

}

使用这种形式,您当然会丢失对迭代器的直接引用,这是必需的,例如,如果要在迭代时从集合中删除项目.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值