以前在用Ruby on Rails作開發,發現多基本的語法概念都比較模糊,因此回頭來從基礎學習,但願可以劣實基礎。有什麼不足的地方,但願你們多多指教!
首先是一些簡單的命令
ruby -v查看版本號
ruby -e ‘print 「hello word」’將print 「hello word」做爲一個ruby程序運行並輸出結果 #printf print puts功能基本類似s
Exit 退出環境
如下是一些基本語法
1,註釋
在Ruby中單行註釋使用#,多行註釋使用=begin和=end,註釋放置在begin與end之間。以下所示:
#Ruby_pratice_註釋.rb 從#開始到行尾單行註釋
puts 3/5
puts 3/5.0
printf "Number: %4.3f, String: %s", 7.8, "hi!"
=begin
puts 6/5
puts 6/5.0
多行註釋能夠用=begin和=end;
這也是Ruby的內嵌文檔Rdoc註釋,相似javadoc
能夠用命令ri從源文件生產文檔
=end
03 puts 3/5
04
05 =begin
06 puts 3/5
07 多行註釋能夠用=begin和=end;
08 這也是Ruby的內嵌文檔Rdoc註釋,相似javadoc
09 能夠用命令ri從源文件生產文檔
10 =end
2,標識名和變量
Ruby的標識名區分大小寫。關鍵字,不能用來看成常量,變量,方法,類或模塊的名字。
Ruby使用一個約定來幫助它區別一個名字的用法:名字前面的第一個字符代表這個名字的用法。局部變量、方法參數和方法名稱應該用一個小寫字 母開頭或者用一個下劃線開頭;全局變量用美圓符做爲前綴 $;而實例變量用 @ 開頭;類變量用 @@ 開頭;類名、模塊名和常量應該用大寫字母開頭。
3,數據類型
Ruby 數據類型有數字,字符串,數組,哈希表,區間,正則表達式。
數字類型有整數型,浮點型。其中浮點型數據小數點後必須加數字。
字符串型是在‘’或者「」之間。
數組的下標也是從0開始,但不一樣的是Ruby數組的元素能夠是不一樣類型的。如:[1,2.2,"hello",[1,2,3]]。
區間:1..4 表示1,2,3,4;1...4表示1,2,3。
4,Ruby基本的賦值用「=」來完成。
如a=1,b=1+1 結果爲:a=1,b=2
==比較兩個值是否相等,返回true,false 如:a=1; b=1.0; a==b #true
eql?比較兩個對象的值、類型是否相等,返回true,false 如:a=1; b=1.0; a.eql?(b) #flase(a爲整數型,b爲浮點型)
equal?比較兩個對象在內存中地址是否相同,返回true,false 如:a=1.0; b=1.0; a.equal?(b) #flase a=1.0; b=a ; a.equal?(b) # true
<=> 比較兩個對象的大小,大於、等於、小於 分別返回1,0,-1
=== 右邊的對象是否在左邊區間以內,返回 true, flase
=~(匹配)用來比較是否符合一個正則表達式,返回模式在字符串中被匹配到的位置,不然返回 nil
!~ (不匹配) 斷言不符合一個正則表達式,返回 true, flase
<= < > >= 小於等於 小於 大於 大於等於
5,循環
while,for,case,break等同C、C#、Java大同小異,下面是一些比較特別的:times , upto , downto , each ,step
3.times { print "Hi!" } #Hi!Hi!Hi!
1.upto(9) {|i| print i if i<7 } #123456
9.downto(1){|i| print i if i<7 } #654321
(1..9).each {|i| print i if i<7} #123456
0.step(11,3) {|i| print i } #0369
6,異常與線程
與C#、Java中的try…catch…finally…throw 相對應, Ruby中用begin/end …rescue…ensure … raise 來處理異常,retry能夠用在rescue中。能夠只用rescue或是ensure,二者都使用時,rescue必須在ensure前。java