测试之路,与你同行!

Ruby.new

上一篇 / 下一篇  2010-01-28 14:21:14 / 个人分类:Ruby

def say_hello(name)
    "Hello,#{name}";
  end
  puts say_hello("lili");

输出:Hello,lili

任意复杂的表达式都允许放在#{...}结构中。方便起见,如果表达式是一个全局实例或类变量,则不需要提供花括号。

$greeting="Hello"  #$greeting是全局变量

@name="Prudence"   # @name是实例变量

puts "#$greeting,#@name"

输出结果:Hello,Prudence

局部变量、方法参数和方法名称都必须以小写字母或下划线开始。全局变量以$为前缀,

实例变量以@开始,类变量以@@开始。

数组和散列表

ruby的数组:a=[1,'cat',nil,3.14] nil是一个对象,与别的对象一样,它用来标示没有任何东西的对象。

散列表与数组类似,散列表使用花括号而不是方括号,必须为每一项提供两个对象:一个键(key)和一个值(value)    =>左边是key,右边是value。一个散列表中,键必须是唯一的。

inset_section={

'cello' => 'String',

'drum' => 'percussion'

}

block和迭代器

block是在花括号或者do...end之间的一组代码。

ruby库中大量使用了block来实现迭代器,迭代器是从某种收集如数组中连续返回元素的方法。

animals=%w{1 2 3 4 4}
animals.each{|animal| puts animal}

输出:1
2
3
4
4

each迭代器循环处理数组中的元素,对每个元素调用yield.可以把yield想象成比如方法调用,它调用含有yield语句的方法所关联的block。


TAG:

 

评分:0

我来说两句

Open Toolbar