- 浏览: 83269 次
- 性别:
最近访客 更多访客>>
最新评论
-
Bernice_liu:
谢谢分享,受益匪浅,适合我——初学者
Ruby语言中文教程all in one -
何枫abc:
怎么感觉Ruby有点像C!!!
3.5 标识名和变量的作用域 3.6 类库 3.7 数据类型 -
何枫abc:
谢谢了!!!你写的很好,现在我正在学Ruby!!!
第二章 运行环境 -
yangzhihuan:
正想知道ruby是怎么样生成像javadoc那样的文档,多谢了 ...
3.1 注释与分行 -
whisper:
从lambda演算的角度说我们并不关心一个东西到底是什么,而只 ...
变量一定要有类型吗(一)
文章列表
Ruby 是动态语言,你可以改变 Ruby 程序的结构,功能,在Ruby程序运行中。方法、属性可以被加入或去除,新的类或对象可以被建立,新的模块可以出现。请看程序 E5.4-1.rb :
ruby 代码
# E5.4-1.rb
class Person
def talk
puts "Today is Saturday. "
end
end
p1=Person.new
p1.talk # => To ...
- 2007-02-13 03:28
- 浏览 769
- 评论(0)
变量是什么?变量有哪些特征呢?学习编程的过程,就是深化理解变量的过程。
先说变量是什么?变量是代号。
在数学中,你写下一个小写的英文字母“ f ”,这个 f 可以是数字 5 ,也可以是一个函数式 f = n * n + 1 ,还可以是一个曲面,或者是一个逻辑蕴涵关系…数学里,我们把常用的符号约定俗成,比如π代表圆周率,∑表示求和。
编程语言的产生,建立在数学的基础上。在汇编语言的时代,一条语句
LD x,37H ,
其中的 LD 是操作码,代表一种操作;x 和 37H 是操作数,是被操作的对象。无论是 LD ,还是 x 和 37H ,对于机器来说,都只是符号。
后来,编程语言发展成两大类,一 ...
- 2007-02-13 03:22
- 浏览 1131
- 评论(0)
5.1 为什么是Ruby?
现在软件生产的代表语言是Java。但Java已老,在主流市场,虽然它还会将继续存在许多年。
为什么说Java已老?很怀念Pascal的严谨、优美与高效。Java也一样,是静态语言,沉稳的同时注定了笨重,不善腾挪;而 ...
- 2007-02-13 03:16
- 浏览 1004
- 评论(0)
不同的子类继承一个父类,不仅子类和父类的行为有变异,而且子类彼此的行为也有差异,这就是多态。看程序 E4.5-1.rb ,接着4.3节的代码,添加如下:
ruby 代码
class Worker < Person
def talk
puts ...
- 2007-02-13 03:07
- 浏览 790
- 评论(0)
如果我们要写一个学生类,他当然有姓名、年龄、国籍,他也可以talk,但是应该表明身份是学生。看程序 E4.4-1.rb ,接着上一节的代码,添加如下:
ruby 代码
class Student < Person
def talk
puts " ...
- 2007-02-13 03:04
- 浏览 827
- 评论(0)
让我们来定义一个类,类名是Person,类名首字母要大写;属性有姓名@name、年龄@age、国籍@motherland,实例变量用@开头; 方法有一个,叫talk, 方法名和参数名应该用一个小写字母开头或者用一个下划线开头,看程序 E4.3-1.rb 。#=>my name is kaichuan, age is 20
I am a Chinese.
my name is Ben, age is 18
I am a foreigner.
@age.to_s的含义是:将数@age转换为字符串。
initialize是初始化方法,相当于Java的构造器。参数age有一个缺省值18 ...
- 2007-02-13 02:53
- 浏览 924
- 评论(0)
4.1 两种思维方式
人们起初使用计算机来进行科学计算,比如说:计算级数和,计算积分值。那时,程序要处理的都是带小数点的数字。后来,人们要处理文本,有点麻烦,好在文字也可以转换成数字。这两个时期,编写程序的 ...
- 2007-02-13 02:47
- 浏览 924
- 评论(0)
还是求50以内的素数,尽可能地用到本章更多的语法,看程序 E3.12-1.rb ;
ruby 代码
# E3.12-1.rb 求50以内的素数
$arr=[ ] #建立一个全局数组 $arr
$arr[0]=2
def add_prime(n) #定义方法 将 n以内的奇素数加入$arr
3.step(n,2){|num|$arr《num if is_prime?(num) }
end
...
- 2007-02-13 02:05
- 浏览 1016
- 评论(0)
一. while(当…) 循环
while 条件
语句1; 语句2 ; 语句…
end
二. 单行 while 循环
( 语句1; 语句2 ; 语句… ) while 条件
三. until(直到…) 循环
我们想输出数字1到9,看程序 E3.10-1.rb,E3.10-2.rb :
a=1
while a <10
print a," "
a=a+1
end
...
- 2007-02-13 01:53
- 浏览 1005
- 评论(0)
判断条件是否相等用“==”,注意不要写成“=”。
一. 单行 if(如果) 语句
1) if 条件① then 语句1; 语句2 ; 语句… end
2) (语句1; 语句2 ; 语句… ) if
- 2007-02-13 01:30
- 浏览 1351
- 评论(0)
Ruby 基本的赋值用 “ = ” 来完成,就像 E3.8-1.rb 如下示例:(在不产生歧义的地方,我用 # => 表示答案)
ruby 代码
a = 1 ;b = 2 + 3 # => a=1 ,b=5
a ,b = b ,a # => a=5 ,b=1
a = b = 1 + 2 + 3 # => a=6 ,b=6
a = (b = 1 + 2) + 3 # => a=6 ...
- 2007-02-12 01:32
- 浏览 1270
- 评论(0)
3.5 标识名和变量的作用域
Ruby的标识名用来指向常量,变量,方法,类和模块。标识名的首字符用来帮助我们确定标识所指向内容的作用域。一些标识名,就是上面所示的关键字,不能用来当作常量,变量,方法,类或模块的名字。
Ruby的标识名区分大小写。
Ruby使用一个约定来帮助它区别一个名字的用法:名字前面的第一个字符表明这个名字的用法。局部变量、方法参数和方法名称应该用一个小写字母开头或者用一个下划线开头;全局变量用美元符作为前缀 $;而实例变量用 @ 开头;类变量用 @@ 开头;类名、模块名和常量应该用大写字母开头。
词首字母后面可以是字母、数字和下划线的任意组合; @ 后面不可以 ...
- 2007-02-12 01:18
- 浏览 1200
- 评论(1)
3.2 分隔符
关键字、运算符、分隔符一起构成了一门编程语言的基本定义。3.2 、3.3 、3.4节分别对分隔符、关键字、运算符作一些介绍。如果有不详细的地方,将在本书后面部分介绍;或者是因为这些不常用到;还有一种情况是:可以被其它常用语法定义代替。
Ruby中的常用分隔符如下:
符号<o:p></o:p>
名称<o:p></o:p>
...
- 2007-02-12 01:17
- 浏览 1426
- 评论(0)
Ruby中的注释有单行与多行两种,先看一个程序E3.1-1.rb:
ruby 代码
# E3.1-1.rb 从#开始到行尾是单行注释
puts 3/5
puts 3/5.0
=begin
puts 6/5
puts 6/5.0
多行注释可以用=begin 和 =end ;
实际上,这也是Ruby的内嵌文档(Rdoc)注释,类似javadoc ,
可以用命令 r i 从源文件生产文档。
=en ...
- 2007-02-12 01:12
- 浏览 3065
- 评论(1)
你如果只是想了解Ruby语言,不准备实践,请跳过本章,从第三章开始我们的Ruby语言之旅。
2.1 下载Ruby 1.8.5
首先下载Ruby 1.8.5(2006-8-25) for Windows:
在网页http://www.rubychina.net/downloads/ 上找到
--〉Ruby on Windows
--〉Ruby 1.8.5 One-Click Installer Stable version (recommended)
点击鼠标右键,另存为…,存入你的本地硬盘,这就完成了下载。
2.2 安装Ruby 1.8.5 for Windows
运行下载好的文件ru ...
- 2007-02-12 01:06
- 浏览 2637
- 评论(1)