ruby物件陣列的排序
作者剛剛接觸ruby,因之前總認為指令碼語言語法不規範,對指令碼語言有些偏見,如不是專案需要並不會去學習python、ruby等語言。現在專案中需要實現物件陣列排序的任務,對於昨天開始看ruby的我來說壓力山大啊!【汗】
但是經過一番查詢資料,終於初步實現了自己想要的結果,現將自己做的測試程式記錄下來,以記念在ruby的道路上打的第乙個小怪!**如下:
1程式執行結果:#!/usr/bin/ruby23
class
location
4attr_accessor :longitude
5attr_accessor :latitude
6def
initialize(lo,la)
7 @longitude, @latitude =lo,la
8end
9end
1011
class
obd12
attr_accessor :gps
13attr_accessor :loc
14def
initialize(g,l)
15 @gps =g
16 @loc =l
17end
1819
end20
21 loc = location.new(10,20)
22 obd = obd.new(1,loc)
23 loc2 = location.new(20,30)
24 obd2 = obd.new(5,loc2)
25 loc3 = location.new(40,50)
26 obd3 = obd.new(2,loc3)
2728 @obds =
29 @obds[0] =obd
30 @obds[1] =obd2
31 @obds[2] =obd3
3233
34 @obds.sort! #
注意此處的'!',如果沒有'!',則原陣列不會被改變,建議去掉嘆號後試試效果
35puts obd.gps
36puts obd.loc.longitude
37puts obd.loc.latitude
38 puts "
#,#,#
"39 puts "
#,#,#
"40 puts "
#,#,#
"
希望對大家有幫助吧!
[注]:
Ruby物件陣列按屬性排序
在rails裡,我們可以用sort by方法對乙個ruby物件陣列按照某個屬性進行排序,如 user.find all sort by 等效於 users user.find all users.sort sort 後面的 使得排序結果直接存入陣列 users中,如果不想排序破壞 users陣列,直...
python中陣列物件排序
sort 方法語法 list.sort cmp none,key none,reverse false 引數 例子1 usr bin python coding utf 8 獲取列表的第二個元素 def takesecond elem return elem 1 列表 random 2,2 3,4 ...
給Ruby 不同陣列物件新增不同排序方法
有些時候我們需要給類的乙個示例物件新增方法如下 class person end pedro person.new peter person.new inject a method in the instances def pedro.hello world puts hola mundo end ...