1,數字
ruby是乙個完全物件導向的語言,如下圖
可以看出ruby每種數字型別都是乙個物件,並且各個陣列類不需要明確的指出。ruby會根據數字的大小自動轉換。
irb(main):002:0> 3.class #數字的型別
=> fixnum
irb(main):005:0> 10000000000000000000.class
=> bignum
irb(main):007:0> 3.2.class
=> float
irb(main):008:0> 3.even? #是否是偶數
=> false
irb(main):010:0> 3.odd? #是否是奇數
=> true
irb(main):012:0> 3.times #列印三次字串
"love"
"love"
"love"
=> 3
2,數字類的常用方法
#1.2.to_i 浮點數轉成整數
#1.to_f 整數轉成浮點數
#1.to_s
#"1".to_i "1".to_f
#1.5.round 四捨五入
#1.5.ceil = 2
#1.5.floor = 1
具體的數字api用法
3,string
ruby
的字串是mutable
(可變的)就是說字串物件中字串是可變的,但是物件不變。
irb(main):013:0> a = '123'
=> "123"
irb(main):015:0> a[0] = '0'
=> "0"
irb(main):016:0> a
=> "023"
irb(main):017:0> a.object_id
=> 70204366116340 #id
irb(main):018:0> a[1] = '4'
=> "4"
irb(main):019:0> a.object_id
=> 70204366116340 #id是一樣的,說明ruby的字串是mutable
irb(main):020:0> a
=> "043"
4,'', "", %q在字串中的用法
irb(main):022:0> '123' #單引號直接定義乙個字串, 單引號效率上比雙引號快
=> "123"
irb(main):023:0> a = '456'
=> "456"
irb(main):024:0> "123#" #雙引號直接定義乙個字串,可使用 #{} 進行變數的插入操作
=> "123456"
irb(main):025:0> %q("'eweqrqew"'') #無需轉義字元,直接輸出內容
=> "\"'eweqrqew\"''"
irb(main):026:0> a = <
irb(main):027:0" 3232
irb(main):028:0" 3223
irb(main):029:0" 324234
irb(main):030:0" text #定義多行字串
=> "3232\n3223\n324234\n"
5,字串的常用方法
#1. a = string.new("1111") #建立字串
# a.length 字串長度
#a.empty? 字串是否為空
#a.include?(b) a字串包含b
#a==b a字串等於b
具體的stringapi用法 ruby分割字串 Ruby字串
構建方法 str hello world 只允許 與 轉義 str hello world 允許所有轉義和 字串拼接 str q hello world 等同單引號 str q 等同雙引號 str hello world eosstr abc 2 abcabc 索引str abc s str 1 s...
Ruby字串學習筆記
1.追加乙個字串到乙個字串 操作符 2.join 方法可以直接從陣列轉換為字元 test array 1,2,3,4 test array hello puts test array.join 結果輸出 1234hello 陣列的join insert string 方法,只是在中間插入,不在最後插...
ruby字串學習筆記4
1 單獨處理字串的字元 如果處理的是ascii碼的文件使用string each byte 注意 沒有 string each方法,string each byte 速度比 string scan快 string scan用於配合正規表示式時使用 foobar each byte 102 f 111...