循环时的注意事项
循环做什么
停止循环的条件是什么
Ruby实现循环的方法
times while each for until loop
times方法
"满地油菜花" "满地油菜花" "满地油菜花" "满地油菜花" "满地油菜花" "满地油菜花" "满地油菜花" shijianzhongdeMacBook-Pro:learn_ruby shijianzhong$ cat times.rb 7.times do p "满地油菜花" end
"第0次的循环" "第1次的循环" "第2次的循环" "第3次的循环" "第4次的循环" shijianzhongdeMacBook-Pro:learn_ruby shijianzhong$ cat times2.rb 5.times do |i| p "第#{i}次的循环" end
"第1次的循环" "第2次的循环" "第3次的循环" "第4次的循环" "第5次的循环" shijianzhongdeMacBook-Pro:learn_ruby shijianzhong$ cat times3.rb 5.times do |i| p "第#{i + 1}次的循环" end shijianzhongdeMacBook-Pro
for语句
15 shijianzhongdeMacBook-Pro:learn_ruby shijianzhong$ cat for.rb sum = 0 for i in 1..5 do sum = sum + i end p sum shijianzhongdeMacBook-Pro:learn_ruby shijianzhong$
.. 与 ...表示范围, ..表示首位都取到的,...表示取头不取尾
while 语句
1 2 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat while.rb i = 1 while i < 3 do puts i i += 1 end
15 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat while2.rb sum = 0 i = 1 while i <= 5 sum += i i += 1 end p sum
55 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat while3.rb sum = 0 i = 1 while sum < 50 sum += i i += 1 end p sum shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$
until语句
until 是在条件假的时候,才执行操作
示例代码
55 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat until.rb sum = 0 i = 1 until sum >= 50 sum += i i += 1 end p sum
通过while来实现的效果
55 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat while_not.rb sum = 0 i = 1 while not(sum >=50) sum += i i += 1 end p sum shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$
each方法
对象.each do |变量|
处理 变量
end
对象.each {|变量| 处理变量}
for 循环就是通过each方法来实现的
"awk" "Per1" "Python" "Ruby" shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat each_names.rb names = ["awk", "Per1", "Python", "Ruby"] names.each do |name| p name end shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$
求和的用each写
15 shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$ cat each.rb sum = 0 (1..5).each do |i| sum += i end p sum shijianzhongdeMacBook-Pro:chapter_6 shijianzhong$
loop 方法 死循环输出
loop do print "Ruby" end
会一致输出Ruby
循环控制
break next 同Python的break 与 continue
Python中用很6了,就不写了
专栏do ~ end 与 { ~ }
多行的代码写 do ~ end ,单行的写 { ~ }