1、關鍵字
關鍵字不能用于定義變量或者常量,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,BEGIN,END,__FILE__, __LINE__,return,alias
2、注釋
單行注釋以#開頭,如:#這是注釋語句
多行注釋以=begin開頭,以=end結束,如:
代碼如下:
=begin
block_test = lambda {puts 'This is from lambda!'}
def block_foo(bt)
puts 'Before yield!'
bt.call
puts 'After yield!'
end
block_foo(block_test)
=end
3、數據類型
Ruby中以下種數據類型 :Numeric(包括Fixnum和Float)、String、Boolean、Array、Regexp、Range、Hash,還有一種特殊類型:Symbol
4、賦值和條件運算
Ruby中的賦值使用“=”,可以進行批量賦值,如a,b,c=1,2,3
Ruby中的條件運算,如下列表:
運算符 | 說明 |
==和!= | 比較兩個對象的值是否相等,a=1,b=1.0,a==b(true) |
eql? | 比較兩個對象的值是否相等和數據類型是否一致,a=1,b=1.0,a.eql?b(false,a為Fixnum類型,b為Float類型) |
eqlal? | 比較兩個對象在內存中的地址是否一致,a=1,b=1,a.eqlal?b(false,在內存中是2個對象,地址不一樣),a=1,b=a,a.eqlal?b(true) |
<=> | 比較兩個對象的值的大小,對應返回1(大于),0(等于),-1(小于) |
>,>=,<=,< | 比較兩個對象的值的大小,返回true和false |
=== | 區間包含關系運算符,右邊對象是否在左邊區間的范圍之內 |
=~和!~ | 正則表達式匹配運算符,表示匹配和不匹配正則表達式 |
5、輸出和輸入
Ruby 語言 中自帶的IO輸入輸出方法寫在Kernel 模塊的內,并且Mix-in 在根類Object中,在任意類中使用輸入輸出方法,可以直接進行調用,
輸出方法代碼示例:
代碼如下:
print 'Hello!' #輸出:Hello!
print "Hello!/n" #輸出:Hello!
printf 'Number: %.2f, String: %s',14.547,'hi!' #輸出:Number: 14.55, String: hi!
print "/n"
puts 'Hello!' 'hi' #輸出:Hello!hi
puts 'Hello!','hi' #輸出:Hello![換行]hi
print可以加參數可以輸出到文件,默認輸出到控制臺,printf是按格式輸出,如上代碼中,%.2f的意思是第一個參數按Float類型輸出,保留2位小數,%s是第二個值按String類型輸出,print "Hello!/n"和print 'Hello/n'的區別在于,""號對輸出內容進行解析,/n起換行作用,''號原樣輸出內容,/n被原樣輸出,沒起換行作用,puts方法的參數是可變參數,可以有零個或者多個參數,參數間空格則輸出不換行,參數間用“,”分割,則每輸出一個參數都換行;
新聞熱點
疑難解答