==、===、eql?以及equal?的区别

2015-12-10  本文已影响87人  kamionayuki
1 == 1.0 # true
(1..10) === 5 # true: 5属于range 1..10
/\d+/ === "123" # true: 字符串匹配这个模式
String === "s" # true: "s" 是一个字符串类的实例
1.eql?(1.0) # false
   s1 = "d"
   s2 = "d"    
   s1.eql? s2 #true
   s1.equal? s2 #false    
   s1.object_id #19839780
   s2.object_id # 19839768
   
   s3 = "d"
   s4 = s3    
   s3.eql? s4 #true
   s3.equal? s4 #true    
   s3.object_id # 19839576
   s4.object_id # 19839576
上一篇 下一篇

猜你喜欢

热点阅读