首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

Ruby_语法_begin_rescue_else_end_应用介绍

2012-09-13 
Ruby_语法_begin_rescue_else_end_使用介绍?Ruby 语法 begin rescue else end 使用 介绍??不经过else的例

Ruby_语法_begin_rescue_else_end_使用介绍

?

Ruby 语法 begin rescue else end 使用 介绍

?

?

不经过else的例子

begin  1/0rescue => e  puts "in rescue  error is:#{e}"else  puts "in else"end
?

经过else的例子

begin  1/1rescue => e  puts "in rescue  error is:#{e}"else  puts "in else"end

也就是说,预计可能会报错,如果没有报错,就会走else的语句

?

使用的地方:报错和不报错 都会做某些类似事情的时候

上面的例子不是很贴切,没有体现else的用法,可以把esle去掉。

看一个ruby源码的例子:

      x = Thread.current      y = Thread.start {        begin          sleep sec        rescue => e          x.raise e        else          x.raise exception, "execution expired" if x.alive?        end      }      yield sec

这里,waiting的时候,如果没有报错,也即是说没有异常的程序,表示时间到了,也要报错。

这样用的地方,就很合乎常理了。

?

。。。结束了。。。 END ?EOF?

?

(((

?

?

热点排行