浏览 1789 次
锁定老帖子 主题:if和each的组合
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-12-20
现在有一个数组,如果数组为空,则输出Empty,如果数组不为空,则遍历输出数组元素。
最初想到的一般是这样:
a = [1, 2] if a.empty? puts "Empty" else a.each do |i| puts i end end
能不能将if和each组合起来呢?
我想到的一个实现方式如下:
a = [1, 2] if a.each do |i| puts i end.empty? puts "Empty" end
如果有更简的实现方式,希望能提出来与大家分享。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-12-20
a = [1, 2]
puts a.empty ? "Empty" : a |
|
返回顶楼 | |
发表时间:2009-12-20
0701 写道 a = [1, 2]
puts a.empty ? "Empty" : a 首先,应该是puts a.empty? ? "Empty" : a 其次,你这边输出的a是Arrary类型的,帖子中是遍历输出的,其中的i是Fixnum类型的 |
|
返回顶楼 | |
发表时间:2009-12-21
a.empty? ? "empty..." : a.each {|i| puts i}
|
|
返回顶楼 | |
发表时间:2009-12-23
arr = [1,2,3] (["Empty"] + arr).each {|e| puts e} |
|
返回顶楼 | |