1. 程式人生 > >Ruby基礎知識-Ruby的資料型別

Ruby基礎知識-Ruby的資料型別

Ruby 資料型別有數字,字串,陣列,雜湊表,區間,正則表示式。
數字分為整數型(1,0,75 ,1e3),浮點型(2.4 ,7.0 ,0.99)。浮點型資料小數點後必須跟數字( 1.e3 不可以,1.1e3可以)。數字可以有字首:0表示八進位制, 0x表示十六進位制, 0b表示二進位制(0724,0x5AC4,0b11101)。
字串是在‘ ’(單引號)、 “ ”(雙引號)之間的程式碼。

陣列的下標從0開始。Ruby的陣列和其它語言不同,陣列的每個元素可以是不同的型別:[ 2.4, 99,“thank you”,[ a, b ,c ] ,78 ]。



我們來看下幾個陣列的小列子

demo1:

arr1=[]
arr2=Array.new
arr3=['4','5','6']

print arr1,"\n"
print arr2,"\n"
print arr3,"\n"

分別返回

irb(main):010:0> print arr1,"\n"

=> nil
irb(main):011:0> print arr2,"\n"

=> nil
irb(main):012:0> print arr3,"\n"
456
=> nil


demo2:

arr = ['3','4','5','6','7','8','9']

puts "aaaa",arr[0]
puts arr.first
puts arr[arr.length-1]
puts arr[arr.size-1]
puts arr.last
puts arr[-1]
puts arr[-8]

print arr[1..3]
print arr[-3,2]

#陣列的索引從0開始,一直到陣列的長度減去1;負數表示從陣列末尾開始的索引;用一對數字來索引陣列,第一個數字表示開始位置,第二數字表示從開始位置起的元素數目。

demo3:

arr=[4,5,6]
print arr.join(","),"\n"

arr[4]="m";#賦值
print arr.join(","),"\n" #4,5,6,,m

print arr[3],"\n"; #nil

arr.delete_at(3) #刪除索引3的位置

print arr.join(","),"\n" # 4,5,6,m

arr[2]=["a","b","c"] 

print arr.join(","),"\n" #4,5,a,b,c,m

print arr[2],"\n" #列印2號的位置元素 abc

arr[0..1]=[7,"h","b"] #把0..1 號元素替換為7,"h","b"

print arr.join(","),"\n" #7,h,b,a,b,c,m

arr.push("b");
print arr.join(","),"\n" #7,h,b,a,b,c,m,b

arr.delete(["a","b","c"]) #刪除元素["a","b","c"]

print arr.join(","),"\n"

arr.delete("b")

print arr.join(","),"\n" #7,h,m

arr.insert(3,"d")
print arr.join(","),"\n"

arr<<"f"<<2
print arr.join(","),"\n" #<span style="color: rgb(57, 57, 57); font-family: verdana, 'ms song', Arial, Helvetica, sans-serif; font-size: 14px; line-height: 21px; background-color: rgb(250, 247, 239);">向陣列尾部新增元素</span>

arr.pop #刪除尾元素

print arr.join(","),"\n"
arr.shift #刪除首元素

print arr.join(","),"\n"












demo4:

aaaa = ["aa",4,5,"bb"]
bbbb = [4,1,3,2,5]

print aaaa+bbbb  , "\n"  #aa45bb41325

print aaaa*2  ,"\n"<span style="white-space:pre">	</span>#aa45bbaa45bb

print bbbb-aaaa , "\n"<span style="white-space:pre">	</span>#132

# "並運算,交運算"

print aaaa | bbbb  ,"\n" #aa 45 bb 132

print aaaa & bbbb  ,"\n"

# "排序,倒置"

print bbbb.sort   ,"\n"

print aaaa.reverse  ,"\n"