最近看了《征服Ruby On Rails-web 开发技术详解》这本数,学习了ruby语言的基本语法,并做了一些实例练习。下面我将把学习到的这些东西总结一下,整理成笔记。这个笔记的内容共分为以下几个部分:ruby语言的基本类型、常量和变量的定义和使用、表达式介绍、方法的定义和使用、类和模块的定义和使用、异常处理,另外还有一些高级应用,正则表达式和常用模块处理等。
ruby语言的 基本类型共有七种,包括数字、字符串、范围、符号、数组、哈希表和正则表达式。
1.数字
数字包括整数和浮点数,整数包括定整数和大整数,定整数4个字节,大整数大于4个字节。主要方法:
chr downto(int) {| i | block } up(int) {| i | block } times {| i | block }
浮点数4个字节,和其它语言中的双精度小数相对应。主要方法:
ceil floor round to_i
它们的继承关系是这样的:
Fixnum、Bignum ->Integer、Float ->Numeric ->Object
2.范围
范围是一个类似于集合的闭包,继承关系:Range ->Object
范围的书写形式为: (int ..int)或者(int ...int),后一种形式不带下界。可以把范围转化为数组: to_a
3.数组
数组的定义方式:arr = [1,2,3] 或者 arr = Array[1,2,3] 或者 arr = Array.[](1,2,3) 或者 arr=Array.new(10,1)
转化为数组的方式:arr = %w(1 2 3) 或者 to_a 或者 "1 2 3".split() 或者 "1 2 3".scan(//d+/)
ruby的数组元素类型没有限定,一个数组中可以有多种不同类型的元素。
取数组的某个或某些元素用符号[ ],赋值用[ ]=
判断一个对象是否在数组中 arr.include?(obj)
查找对象在数组中的位置 arr.index(obj) 或者 arr.rindex(obj)