# [Ruby 块]=begin1 块由大量代码构成2 块中代码包含在{}内3 从与其相同名称的函数调用4 可以使用yield语句调用块=enddef test p '在test方法内' yield p '又回到了test方法内' yieldend test {p '你在块内'}#也可以传递由参数的yielddef test yield 5 p '在方法内' yield 100endtest {|i| p "你在块#{i}内"} # 传递多个参数def test yield 5,100…
异常处理的本质:状态回滚或者状态维护. https://en.wikipedia.org/wiki/Exception_handling In general, an exception breaks the normal flow of execution and executes a pre-registered exception handler. The details of how this is done depends on whether it is a hardware or…
第一个例子: 1 ... 5000的加法运算 1 sum = 0 2 i = 1 3 while true 4 sum += i 5 i += 1 6 break if i == 5001 7 end 8 9 sum = 0 10 (1..5000).each{|i| 11 sum += i 12 } 13 puts sum 第二个例子: 对 零 做除数这种情况进行简单的异常处理 1 a = 100 2 3 while true 4 b = gets.to_i 5 begin 6 puts a/…