Ruby快速入门
安装ruby Windows版 一路next
安装好之后打开命令行 输入ruby -y
输入irb进入ruby命令
plus 输出
函数的定义
irb(main):004:1* def a
irb(main):005:1* puts "hello word rauy "
irb(main):006:0> end
定义默认值
irb(main):008:1> def a(name=“zhangsan”)
irb(main):009:1> puts “hello #{name}.”
irb(main):010:0> end
给name赋值之后
irb(main):015:0> puts a(“lisi”)
hello lisi.
定义对象
irb(main):024:1* class subplate
irb(main):025:2* def initialize(name=“zhangsan”)
irb(main):026:2* @name =name
irb(main):027:1* end
irb(main):028:2* def show()
irb(main):029:2* puts “hello #{@name}”
irb(main):030:1* end
irb(main):031:0> end
查看对象中可用的属性
irb(main):047:0> puts Subplate.instance_methods(false)
判断对象之中方法是否 可用
irb(main):049:2* if a.respond_to?(“show”
irb(main):050:1> )a.send(“show”) 执行方法
irb(main):051:0> end
给对象当中的属性赋值
irb(main):057:1* class Gname
irb(main):058:1* attr_accessor :price
irb(main):059:2* def initialize(title=“王者荣耀”,price=200)
irb(main):060:2* @title=title
irb(main):061:2* @price=price
irb(main):062:1* end
irb(main):063:2* def show()
irb(main):064:2* puts “标题:#{@title}”
irb(main):065:2* puts “价格:#{price}”
irb(main):066:1* end
irb(main):067:0> end
=> :show
irb(main):068:0> a=Gname.new
=> #<Gname:0x000001982c01ba60 @price=200, @title=“王者荣耀”>
irb(main):069:0> a.price=150
irb(main):071:0> a.show
备注
单行#
多行 = … =end
后面全是 end
定义数组
irb(main):072:0> list =[“zhangsan”,“lisi”,“wangwu”]
遍历
irb(main):074:1* list.each do |gname|
拼接
irb(main):080:0> puts list.join(“,”)
单引号和双引号的区别
irb(main)💯0> mvp=“#{30+50+80}”
=> “160”
irb(main):101:0> mvp=‘#{30+50+80}’
=> “#{30+50+80}”
获取json字符串
irb(main):102:1* mvp_rank={
irb(main):103:1* name: “zhangsan”,
irb(main):104:1* age:19,
irb(main):105:1* sex:“男”
irb(main):106:0> }
=> {:name=>“zhangsan”, :age=>19, :sex=>“男”}
irb(main):107:0> puts mvp_rank[:name]
获取对象
irb(main):110:0> mvp_rank={“zhangsan”=>28,“lisi”=>19,“wangwu”=>29}
=> {“zhangsan”=>28, “lisi”=>19, “wangwu”=>29}
irb(main):111:0> puts mvp_rank[“lisi”]
字符串的强转
to_i 强转int
to_s 强转string
to_f 强转成double
静态方法
irb(main):127:1* class Statis
irb(main):128:2* def self.show
irb(main):129:2* puts “hello static self”
irb(main):130:1* end
irb(main):131:0> end
静态方法的调用
irb(main):134:0> Statis.show
irb(main):135:0> Statis::show
类继承
irb(main):152:1* class Steamstatis2 <Statis
irb(main):153:2* def hide
irb(main):154:2* puts “ruay jicheng static”
irb(main):155:1* end
irb(main):156:0> end
使用父类的静态方法
Steamstatis2.show
模块的定义
module BaseFunc
VerSion=“1”
def v
return Version
end
将v方法定义成静态方法
module_function :v
条件控制
if/else
if/elseif
unless 如果为不
case/when
for循环
for for num 1…5 do 循环1到五 相当于大于等于 for num 1…5 do 循环1到五 大于
while
until index==5 直到等于五就退出
特殊循环
each
times 5.times do|i| 相当于0-5
step 1.step(10,3) do |i| 每次循环3
upto 2.upto(5) do|i| 2<=5
upwnto 5.upto(2) do|i| 5>=2
异常处理
begin 有可能出现的异常
rescue 出现异常 可以搭配else
ensure 最后处理的异常 final