對aarraylist進行排序
要對arraylist進行排序還不容易嗎?用sort()方法。非常容易解決的。但是事情真的那麼簡單嗎?
如果情況是這樣的:
dimal
asnew
system.collections.arraylist
dim
syncal
assystem.collections.arraylist
syncal = system.collections.arraylist.synchronized(al)
syncal.add("abc")
syncal.add("def")
syncal.add("hijklmnop")
要進行排序,就這樣呼叫sort()方法:
syncal.sort()
這樣作當然是正確的,但是如果需要的是倒序又該怎麼辦?答案是實現system.collections.icomparer介面。如下所示:
public
class
desc
implements
system.collections.icomparer
public
function
compare(
byval
x as
object
, byval
y as
object
) as
integer
implements
system.collections.icomparer.compare if
x > y
then
return-1
endif if
x < y
then
return1
endif if
x = y
then
return0
endif
end
function
end
class
然後在呼叫arraylist的sort()方法時把該類的乙個例項作為引數傳遞給sort()方法。
console.writeline("")
syncal.sort(new
desc)
for
each
obj
asobject
insyncal
console.writeline(obj.tostring)
next
這樣就按照倒序排列了。
完整的**如下:
module
module1
sub
main()
dim
al as
newsystem.collections.arraylist
dim
syncal
assystem.collections.arraylist
syncal = system.collections.arraylist.synchronized(al)
syncal.add("hijklmnop")
syncal.add("abc")
syncal.add("def")
syncal.sort()
for
each
obj
asobject
insyncal
console.writeline(obj.tostring)
next
console.writeline("")
syncal.sort(
newdesc)
for
each
obj
asobject
insyncal
console.writeline(obj.tostring)
next
console.readline()
end
sub
public
class
desc
implements
system.collections.icomparer
public
function
compare(
byval
x as
object
, byval
y as
object
) as
integer
implements
system.collections.icomparer.compare if
x > y
then
return-1
endif if
x < y
then
return1
endif if
x = y
then
return0
endif
end
function
end
class
end
module
對字典進行排序
通常我們在日常工作中會對字典進行排序,如下面的這種情況 這是乙個介面返回的json資料 2018 06 02 2018 06 03 2018 06 04 2018 06 05 2018 06 06 2018 06 07 我們要取到result對應的值,然後去根據條件進行排序,便於分析觀察資料 imp...
對int array進行排序
今天再學習一些c 的基礎知識,如對 int array進行排序 你可以在控制台應用程式中,建立乙個類別,它屬性和2個建構函式 接下來,我在這個類別中,新增我們處理資料的方法 如我們需要在螢幕中輸出的結果 private void output int sortresult private void ...
python 對字典進行排序
import itertools thekeys b a c thevalues bbb aaa cccc d dict itertools.izip thekeys,thevalues 建立字典 print d def sorteddictvalue adict keys adict.keys k...