Ruby基础入门学习总结
一、Ruby的特色
Ruby是一种具有交互性的动态语言,语法简单,容易上手。与其他脚本语言相比,她比Perl强大,比Python更面向对象。她还具有开源、多平台、可直接访问OS、不需内存管理等特性。她吸取了Perl的正则表达式、Python的简单可持续性、Smalltalk的纯面向对象和单继承、LISP的无穷嵌套的语法,Java的线程等等。
二、安装配置Ruby环境
下载ruby1.8.7(最新版本),安装,配置classpath和path %RUBY_HOME%\bin验证环境是否安装成功:在cmd中输入 ruby -v,如果现实出ruby的版本信息则安装成功。
在命令行中,执行ruby语言的三种方式:
第一种:输入 “ruby -e 'print "Hello world!"'
第二种:进入ruby文件(cd ruby187), 输入irb,输入 print "Hel"
第三种:进入ruby文件,输入:
copy con hello.rb
print "hello world"
^Z 运行的方法: ruby hello.rb
三、Ruby中的注释与分行:
1.单行注释符号: # #此处内容被注释掉
2.多行注释: =begin 和 =end 示例:
=begin #此处的=begin要顶格写,且各个字母还有符号之间不能有空格
注释始了!
此部分内容均被注释掉
类似javadoc
=end
3.分行:一行如果有多个语句,用分号 ; 表示一个语句的结束,用 \ 表示连接下一行。例如:
puts 21/44;puts 324/111;puts "演示连行"\
"连行了哈!" # “演示连行” 与 “连行了哈!” 出现在一行
四、Ruby中的关键字
module,class,def,undef,defined? ,if,then,else,elsif,case,when,unless,
for,in,while,until,next,break,do,redo,retry,yield,not,and,or,true,false
nil,rescue,ensure,super,self,begin,end,_file_,_line_,return,alias
五、Ruby中的标识名
1、局部变量、方法参数、方法名称用一个小写字母或者下划线开头
2、全局变量的前缀:$
3、实例变量的前缀:@ ,@后不能直接跟数字
4、类变量的前缀:@@
5、类名、模块名和常量应该用大写字母开头
注:Ruby程序代码现在是用7位ACSⅡ码表示
六、Ruby的数据类型
(075,0x2AFC,Ob11010)
2、数组:一个数组可以装不同类型的数据,例如:
[11,0.12,"hello world"]。
3、区间:1..6 表示1,2,3,4,5,6
1...6 表示1,2,3,4,5
七、Ruby的赋值语句
a = 1; b = 2*4 # a=1, b=8
a,b = b,a # a =8 ,b=1 交换
a = b = 1+3 # a =4,b =4
a = (b = 1+1)+3 # a=5,b=2
a = 5;
b,c,d = a,a+2,a*2 #b=5, c =7, d=10
八、Ruby的条件运算符
== (等于) != (不等于)
eql? 比较两个对象的值是否相等,返回 true false
a=2,b=3 a.eql?(b) #false
equal? 比较两个对象在内存中地址是否相同,返回true false
<=> 比较两个对象的大小 分别返回1 ,0 ,-1
=== 右边对象是否在左边区间之内
=~(匹配)
!~(不匹配)
< <= > >= 小于 小于等于 大于 大于等于
九、Ruby的条件判断语句
1、if语句
if 条件 语句; ...
elsif 条件 语句;...
else 语句;...
end
2、unless语句
unless 条件 = if not(条件)
3、case语句
x = 3
case x
when 1..2
print "x=",x,"在1..2中"
when 3..5
print "x=",x,"在3..5中"
else
print "x=",x,"其他可能"
十、Ruby中的循环语句
1、while(当...)循环
a=1
while a<4
print a," ,"
a=a+1
end
2、until(直到...)循环
a=1
until a>=4
print a,","
a=a+1
end
3、for...in循环
for 变量 in 对象
语句1; 语句2 ; 语句…
end
for i in 1..9
print i,","
end
4、break ,next ,redo ,retry
break:跳出当层循环
next:忽略本次循环的剩余部分,开始下一次循环
redo:重新开始此次循环
retry:重头开始这个循环体
十一、Ruby中的异常与线程
与java中 try..catch..finally..throw相对应,ruby中用begin/end...rescue..ensure...raise来处理异常。