• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ruby -- 基础学习(五)empty、nil、blank三者之间的区别

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

这三个方法在ROR中经常用到,都是用来判断是否为空的。

区别是:

ruby的方法:.nil?、.empty?

rails的方法 :.blank?

用法的区别:

   .nil?    :   判断对象是否存在。

.empty? :   是对象已经存在,判断是否为空字段。

.blank?  :   相当于同时满足 .nil? 和 .empty? 。

注: Rails API中的解释是如果对象是:false, empty, 空白字符都是blank。

      比如说: "", " ", nil, [], 和{}都算是blank。  

      也就是说,object.blank? 相当于 object.nil? || object.empty?

.nil? 和 empty? 的简单例子

 1 nil.nil?
 2 => true
 3 
 4 false.nil?
 5 => false
 6 
 7 1.nil?
 8 => false
 9 
10 0.nil?
11 => false
12 
13 "".nil?
14 => false
15 
16 [].nil?
17 => false
18 
19 "".empty?
20 => true
21 
22 "abc".empty?
23 => false
24 
25 [].empty?
26 => true
27 
28 [1, 2, 3].empty?
29 => false

注 : .empty?不能用于整数

1 1.empty?
2 => NoMethodError    #说明 empty? 方法不能用于整数

.blank?的简单例子

 1 true.blank?       
 2 => false
 3 
 4 false.blank?
 5 => true
 6 
 7 "true".blank?    
 8 => false
 9 
10 "".blank?          
11 => true
12 
13 "\n".blank?       
14 => true
15 
16 '\n'.blank?
17 => false
18 
19 'true'.blank?
20 => false
21 
22 ''.blank?
23 => true
24 
25 1.blank?
26 => false
27 
28 [].blank?
29 => true
30 
31 [1].blank?
32 => true

 原文链接 : http://www.cnblogs.com/zhualike/archive/2009/11/27/1612215.html


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Ruby中操作字符串的一些基本方法发布时间:2022-07-14
下一篇:
Ruby on rails开发从头来(windows)(十一)-订单(Order)发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap