天天看點

Ruby Note(1)

版權聲明:本文為部落客chszs的原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chszs/article/details/1802323

Ruby Note(1)

1)整數:Fixnum和Bignum,繼承自Integer,互相動态轉換。

數字定義的規則:

數字前加上0表示八進制數

數字前加上0x表示十六進制數

數字前加上0b表示二進制數

字元前加上?則建立一個Fixnum的執行個體,對應該字元的ASCII碼

如數字很長,可用下劃線分開

2)整數運算符

+ - * / % | & ^ << >>

<=> 比較兩個整數的大小

[] 位操作符号

size 傳回整數占用的位元組,主要用于Bignum

to_f 整數轉成浮點數

to_s 整數轉成字元串

3)整數對象內建的一些方法

self.chr 該數代表的ASCII值

self.downto(int) {|i|block}接收一個block程式塊,從大到小循環執行block

self.upto(int){|i| block} 從小到大循環執行block

self.times{ |i| block} 循環執行block塊int次

4)浮點數

Float 相當于C++中的double

self.ceil 傳回比Float大的最小整數

self.floor 傳回比Float小的最大整數

self.round 對Float四舍五入後的整數

self.to_i 傳回Float截掉小數點後面數字的整數

5)字元串

任意兩個單引号或雙引号擴起來的字元組都是字元串

列印輸出方法:

(1)puts方法

可帶有多個參數,每個參數為一個字元串,參數間用逗号連接配接。

該方法将逗号連接配接的多個字元串依次列印,每個字元串間以換行符結束

(2)p方法

調用obj.inspect方法列印一個對象的資訊,如果obj.inspect沒有被覆寫,則使用to_s方法,否則會調用派生類的obj.inspect。

(3)print方法

列印一個字元串。把用逗号分割的多個字元串依次連續列印出來,不換行。

(4)printf方法

列印一個字元串,同時對其中的轉義符進行格式化。

6)轉義符

/t  /n  /r  /f  /b  /a  /e  /s

/377 八進制數表示

/x 十六進制數表示

#{var} 在“ ”環境下自動使用變量var中的值代替#{var},用于嵌入字元串

(1)嵌入字元串

(2)嵌入一個數組類型

(3)嵌入一個正規表達式類型

(4)嵌入一個哈希表類型

(5)嵌入一個範圍類型

7)HERE文檔

HERE文檔用于顯示大塊的資料。同Perl中的HERE文檔。

Ruby中通過符号“<<”和一個特殊單詞一起作為HERE文檔的起始辨別,這個特殊單詞在單行顯示時結束。

注意:所謂的HERE文檔隻是一種代稱,并不是隻能用HERE作為後接的特殊單詞。

HERE文檔可以定義内容所使用的引号是單引号規則還是雙引号規則,下文中采用的是單引号規則。單引号規則将#{a+1}看作是是一個字元串,而不會被運算替代。

8)字元串常用方法

str.length

str.concat(obj)

self.each_byte{|int|block}

self.each_line(newstr=$/){|substr|block}

self.strip

self.strip!

self.lstrip

self.lstrip!

self.rstrip

self.rstrip!

self.downcase

self.downcase!

self.upcase

self.upcase!

9)查找和指派

[]和[]=

[]是通路函數,用于傳回或操作str中某一個值或某一範圍内的值。 

繼續閱讀