ruby系列教材(2):Some Basic Ruby

上一篇 / 下一篇  2008-02-02 14:17:42 / 个人分类:Ruby

先看一个方法的定义:

defsay_goodnight(name)  #(name) 这里的()是可选的

  result = "Good night, " + name

  return result

end

# Time for bed...

puts say_goodnight("John-Boy")

puts say_goodnight("Mary-Ellen")   #这里也可以写成 puts(say_goodnigth("xx"))

 

1.方法使用def开始,end结束

2.#表示注释,相当于java,c++里面的//

3.每行结束不需要";",每个语句占一行

4.不强调缩进,不过建议使用2个字符的缩进,4个字符缩进常常会使得程序超出屏幕右端

5.变量不需要声明,在它被赋值的时候开始存在

6.参数是可以加或者不加括号的,但是优先级规则很难判断哪个参数属于哪个方法,所以,尽量使用括号

7.puts方法,结束要打印一个回车

 

 

下面介绍String literals:

String literals 有2种表现形式,1)"xxxxxxxxxx" 2)'xxxxxxxxxxx'

2种表现是有区别的:

1.单引号的只可以使用纯粹的 literals,详细的说就是不能包括转义字符,以及一些特殊的表示,所以它处理速度快于第2种方式

2.双引号的可以使用转义字符和#{expression},下面详细说明:

  a.替换转移字符,比如\n,替换成为binary value

  b.替换#{expression},替换成为expression的值

例:

def say_goodnight(name)

  result = "Good night, #{name.capitalize}"

  return result

end

puts say_goodnight('uncle')

 

注意,#{expression}这里的括号在某些情况下可以省略,1)当expression是一个global varables时 2)当expression是一个instance varables时 3)expression是一个class varables时

例:

$greeting ="Hello"

@name= "Prudence"

puts "#$greeting,#@name"

 

 

下面介绍很重要的命名规则:

命名(names):名字的第一个字符标识了名字的用法(usage)

1.变量命名规则:

  a.变量名用小写字母或者下划线开始(下划线被认为是字母)

  b.如果是全局变量,用$开始

  c.如果是instance varables,用@开始

  d.如果是class varables,用@@开始

  e.@,$后面不可以接数字

  f._就是字母,但是它没有大写形式

2.其他的命名规则:

  a.类名,module名,常量,用大写字母开始

  b.instance varables 如果有多个单词,用_分开,例如:@i_love_you

  c.类名使用头字母大写的方式区别多个单词,例如:ILoveYou

 

 

 

补充:

代码如下

def say_goodnight(name)

  "Good night, #{name}"        #字符串被隐式的赋值给了一个临时变量

end

puts say_goodnight('Ma')

结果:Good night,Ma

 

ruby中,方法返回的值是最后一次赋值的表达式的值


TAG: Ruby

 

评分:0

我来说两句

我的栏目

日历

« 2024-05-20  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 23115
  • 日志数: 47
  • 建立时间: 2008-01-29
  • 更新时间: 2008-02-02

RSS订阅

Open Toolbar