Ruby语言基础

来源:互联网 发布:it项目经理岗位职责 编辑:程序博客网 时间:2024/06/06 19:29

ruby中除了false以外,其余所有对象中只有nil能代表为空,几遍是数字0也表示true

if nil

'nil is true'

else

'nil is false'

end

if 0

'0 is true'

else 

'0 is false'

end


数组:

有多种方法调用

a = %w{a sa 1 d v}

a.shuffle #打乱顺序

a.reverse#逆序

a.sort#排序

但这些方法都只是返回值会改变

使用!(bang,感叹号一般读作bang)方法,可以改变原数组

a.sort!   a.shuffle! a.reverse!


hash:

hash中的键可以是任何对象,常见的如字符串、symbol符号都可以

user = {:name => 'xx',"age"=>32}

符号作为键可以简写为 symbol_name: 'xxxx'


inspect:

ruby on rails 中经常使用的方法,inspect等价于 p方法

p [1,2,3,4] 等价于 [1,2,3,4].inspect

p方法会返回被调用对象的字符串字面量形式,inspect也是


类:

字符串和数组这样的类,可以直接通过"" []进行初始化

a = “123312asa"

a = [1,3,4,'s',:sd]

也可以通过new方法,两者等价

a = String.new("123asd")

a = Array.new([12,3,:a])

但是Hash有点特殊,传递给new方法的参数表示Hash的键对应的默认值

a = Hash.new(:a)#表示当调用Hash不存在的键的值的时候,值就是:a

a[:b] #a[:b] == :a


#继承

通过superclass方法,可以查看类的父类

superclass既是类方法又是对象方法,一直调用会发现,所有的对象所属的类

最终父类都是BasicObject

原创粉丝点击