李超

cc编程笔记本。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

迭代器是高级语言的特性,非常好用。

比如数组的迭代
 [1,2,3].each{|n| puts n.to_s}
(1..100).each{|n| puts n.to_s}迭代每个元素

字符串的迭代
"abdc".each_byte{|chr| printf "%c\n",chr}  迭代每个byte
"a\nb\nc".each_line{|s| puts s}  以换行符进行分割迭代


retry的使用:
迭代过程中可以使用retry来返回到迭代器的开始,比如
isretry = false
for l in 0..4
  
print l
  
if l == 2 and isretry == false
    isretry 
= true
    puts
    retry
  end
end
puts
# output:
#
 012
#
 01234


最后我们自己定义一个自己的while结构语句 哈哈  使用方法来模仿while
def mywhile(tj)
    
return if not tj
    
yield
    retry
end
i
=0
mywhile(i 
< 3){puts i.to_s; i += 1}

posted on 2008-01-15 17:16  coderlee  阅读(328)  评论(0编辑  收藏  举报