找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 12581|回复: 2

Ruby基础

[复制链接]
发表于 2009-11-29 01:41:33 | 显示全部楼层 |阅读模式 IP:江苏扬州
Ruby的“单行程序”
为了使您适应脚本语言,首先介绍几个Ruby的单行程序。
# 经典的 Hello world.
print "Hello world\n"

# 列出输入文件中包含”From”的行
while gets(); print if /From / end

# 向文件中添加行号
while gets(); print $., ":", $_ end

# π的计算
print 4*Math.atan2(1,1), "\n"

Ruby的注释
Ruby的注释是指从#开始到该行结束。
Ruby的表达式
Ruby的表达式包括下列内容(主要的)。
字符串
字符串是指被单引号(')或双引号(")括起来的部分。在用双引号括起来的字符串中,可以使用反斜杠(\)来指定转义字符,这同C语言是一样的。同时,以#{}括起来的表达式的结果也被置入其中。
数值
整数,浮点数。
数组/散列表
用[]括起来的一串表达式是数组,而以{}括起来的一串表达式是散列表。
散列表是一种可以把任意类型的对象都当成索引的数组。散列表有时也叫做哈希表或辞典。
变量/常数
Ruby中有常数和3种变量。变量和常数的区别在于第一个字符有所不同。
局部变量
变量名以小写英文字母开始。使用时,需要以赋值的方式进行初始化。
全局变量
以$开始。未初始化的值为nil。
实例变量
以@开始。未初始化的值为nil。
类变量
以@@开始。未初始化的值为nil。
类常数
以大写英文字母开始。未初始化的值为nil。
赋值
变量赋值方法如下。
变量=表达式

调用方法(函数)
执行对象固有操作(方法)的方法如下
表达式.方法名
表达式.方法名(表达式..)

在不引起混淆的情况下,可以省略参数的括号。
调用某方法执行主体self的方法时,可以省略最开始的表达式。
方法名
方法名(表达式..)

区分无参数的方法调用和局部变量的方法是看看有没有赋值过程。
操作符表达式
普通的算式可以用(基本上与C语言一样的)操作符来表示。但内部是把操作符当作方法调用(以操作符作为方法名)来处理的。
Ruby的语句
Ruby使用分号(;)或换行来分隔表达式,表达式串起来构成语句。语句的值取决于最后执行的表达式的值。
Ruby的流程控制结构
Ruby中可以使用下列流程控制结构。
if表达式 then代码块 [elsif表达式 then代码块]..[else代码块]end
case表达式when表达式..;代码块...[else代码块]end
while表达式;代码块end
for变量..in表达式;代码块end
if和while的意思与通常的语言基本相同。可以使用分号或换行来代替if代码块中的then。请注意Ruby使用elsif代替C语言中的else if。
case是把若干个比较归为一体的控制结构。
for可以使用循环把数组等的元素分别赋值给变量。
循环内可以使用下列语句。
break
中断循环(相当于C语言的break)。
next
开始下一次循环(相当于C语言的continue)。
redo
重新执行块的第一行。
常用的语句
介绍几个Ruby程序中常用的语句。这些语句是对象类的方法,可以在任何类中使用,就如同使用函数一样。
exit([status])
结束程序的运行。若为status指定了一个整数的话,该整数就成为结束status。默认的status值为0。
gets
从命令行参数指定的文件(群)中读取一行,然后把该行的内容作为字符串返回。若没有制定命令行参数的话,则从标准输入中读取。读取的字符串可以被赋值给变量$_。遇到文件结束返回nil(伪)。
while gets
  ...
end

上面就是典型的用法。
open(文件名[,mode])
打开文件。mode是字符串,就和C的fopen一样。省略时以读取模式打开。
print
输出函数。按顺序将参数输出到标准输出上。省略参数时则输出变量$_的值。
发表于 2010-3-1 00:05:08 | 显示全部楼层 IP:日本
留个脚印,嘻嘻,脚有点臭```````
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 19:22 , Processed in 0.485662 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表