ruby的基本型別 二

2021-08-30 16:37:27 字數 2615 閱讀 3103

陣列常見運算方法

<< 追加元素 例如:[1,2]<<3 返回[1,2,3]

+ 串聯方法 合併兩個陣列 例如:[1,2]+[3,4] 返回[1,2,3,4]

-  陣列差集  刪除比較陣列中出現的元素 例如: [1,2,3]-[3,4] 返回[1,2]

& 陣列交集 例如[1,2,3]&[3,4] 返回[3]

|  陣列並集 例如:[1,2,3]|[3,4] 返回[1,2,3,4]

* 重複陣列 如果*後面是整數則重複整數次數組,如果為字串,則使用此字串連線陣列元素

例如:

[1,2,3]*2 #返回[1,2,3,1,2,3]

puts [1,2,3]*"--" #返回 1--2--3

陣列具有列舉模組的所有方法。

其他常用方法

ary = 

ary.size/ary.length #返回陣列的長度

ary.concat(other_array) #將other_array中的陣列附加到ary中

ary.clear #清空陣列

ary.delete(obj) #刪除陣列中與obj相等的元素,找到則返回,否則返回nil

ary.delete_at(index)#刪除指定下標處的元素

ary.delete_if #刪除指定條件的元素(block返回true)

ary.first/ary.last #返回陣列的第乙個/最後乙個元素

ary.compact #返回乙個陣列的副本,刪除其中的nil元素

ary.flatten #返回乙個只包含基本元素的陣列

ary.index(obj) #返回第乙個等於obj的元素下標

ary.insert(index, obj) #在指定位置插入物件到陣列中

ary.join(sep) #合併陣列為乙個字串,["a","b","c"].join("-") 返回a-b-c

ary.pop/ary.shift #刪除陣列中的最後乙個/第乙個元素

ary.push(obj) #類似於《方法,將obj新增到陣列中

ary.replace(other_array)#使用other_array替換掉陣列中的內容

ary.reverse #反轉陣列中的元素

雜湊hash

ruby中雜湊直接對應的是hash類,以下為建立乙個雜湊的一些方法

s = hash.new

s = hash[1=>"a",2=>"b"]

s =

s = #使用符號作為雜湊的鍵

雜湊的常用方法

hsh = 

hsh.clear #清空雜湊中所有鍵和值

hsh.delete(key) #刪除雜湊中鍵為key的項

hsh.delete_if #根據條件刪除雜湊中的元素

hsh.has_key?(key) #檢測是否含有鍵key

hsh.has_value?(value)#檢測是否含有值value

hsh.index(value) #返回雜湊中值等於vlaue的鍵,返回第乙個,沒有返回nil

hsh.invert #返回逆轉雜湊的鍵和值的新雜湊

hsh.keys #返回雜湊的鍵組成的陣列

hsh.values #返回雜湊的值組成的陣列

hsh.values_at(key) #返回給定的鍵,對應的值陣列

hsh.length #返回雜湊中元素個數

hsh.merge(other_hash)#合併兩個雜湊,如有重複鍵則使用other_hash中的值覆蓋hsh中的值

hsh.replace(other_hash)#使用other_hash中的值替換hsh中相同鍵的值

hsh.to_a #將雜湊轉換為陣列

正規表示式

建立方法

r = regexp.new("\d")

r = /\d/

r = %r

建立好了正規表示式物件就可以是用=~或match方法對字串進行匹配

如:

str="2010-01-01 |||| 2010-01-01"

r = /\d-\d-\d/

matches = str.scan(r)

puts matches

puts "**********==="

str.scan(r)

#輸出:

#2010-01-01

#2010-01-01

#**********===

#2010-01-01

#2010-01-01

時間time

now = time.now

old = time.local(1966,12,12,18,15,20)

puts now

puts old

puts old.strftime("%y-%m-%m %h:%m:%s")

輸出:

2010-06-04 18:03:22 +0800

1966-12-12 18:15:20 +0800

1966-12-12 18:15:20

變數和基本型別二

1.宣告和定義 為了讓多個檔案訪問相同的變數,c 區分了宣告和定義。定義 用於為變數分配儲存空間,同時為變數指定初始值。乙個程式中變數有且只有乙個定義。1.1 extern 宣告 用於向程式表明變數的型別和名字。定義也是宣告,定義變數時宣告了它的型別和名字。可以使用extern 關鍵字宣告變數名而不...

資料基本型別及對應基本型別類

基本資料型別 char 16位 byte 8位 short 16位 int 32位 long,float,double,boolean 基本資料型別對應類 character,byte,short,integer,long,float,double,boolean,string 幾乎所有型別類都有相...

討論的基本型別

整數型別,有更多的可表示的值意味著他們可以代表值的範圍更大 例如,乙個16位無符號整數可以在範圍0到65535代表65536個不同的值,而它的簽署副本將可以表示,在大多數情況下,32768和32767之間的值。注意積極的值的範圍是約一半有符號型別相比,無符號型別,由於這樣的事實,乙個16位用於標誌 ...