初步了解一下什么是ruby

时间:2022-09-03 13:07:46

关键字

defundef方法定义

module模块定义

class类定义

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

嵌入模块BEGINEND

块的起始begin/end

文件相关_FILE__LINE_

方法返回return

别名alias

符号

;用来分隔多语句

()定义方法时容纳参数列表

,隔开多个参数

.将对象归与它的方法分开

::域作用符号,将(模块)类与它的常量隔开

运算符

[][]=数组下标,数组赋值

**乘冥

!~ + - 非,位非,一元加 负号

*/%乘 除 模

+ - 加 减

>><< 右移 左移

&位与

^|位异或 位或

<=<>>=小于等于 小于 大于 大于等与

<==>======~!=!~各种相等判断

&&短路与

||短路或

..... 区的开始到结束点,第二个不包括尾

?: 三元条件运算符

全局变量由$开头.它们可以在程序的任何位置访问到.在初始化前,全局变量有一个特殊的值nil.

这里列出了一些以$打头并跟单个字符的特殊变量.比如,$$包含了Ruby解释器的进程id,它是只读的.这里是主要的系统变量以及它们的含义(细节可在Ruby的参考手册中查到):

$!最近一次的错误信息

$@错误产生的位置

$_gets最近读的字符串

$.解释器最近读的行数(linenumber)

$&最近一次与正则表达式匹配的字符串

$~作为子表达式组的最近一次匹配

$n最近匹配的第n个子表达式(和$~[n]一样)

$=是否区别大小写的标志

$/输入记录分隔符

$\输出记录分隔符

$0Ruby脚本的文件名

$*命令行参数

$$解释器进程ID

$?最近一次执行的子进程退出状态

=begin

示例:win32api操作

=end

require'dl'

User32=DL.dlopen("user32")

MB_OKCANCEL=1

message_box=User32['MessageBoxA','ILSSI']

r,rs=message_box.call(0,'OK?','PleaseConfirm',MB_OKCANCEL)

caser

when1

print("OK!\n")

when2

print("Cancel!\n")

end

system($*[0]) #命令行接收参数$*[0]全局变量

File.open('c:\\boot.ini').ecahdo|line|;putsline;end #读取全部内容

arr=File.readlines('c:\\boot.ini');putsarr[0])#只读第一行

File.open('c:\\boot.ini')do|f1| #另一种方法,只读第一行

whileline=f1.gets

putsline

break

end

end

#写文件

File.new('c:\1.txt',"w").puts 'message'