- 2009-08-19 (水) 13:30
- ActionScript3.0
配列をソートしたいって場合、Array.〜と定数での指定だけでなく、数値での指定も可能なんですね…
| 定数での指定 | 数値での指定 | |
|---|---|---|
| 大文字小文字を区別しない | Array.CASEINSENSITIVE | 1 |
| 降順でソート | Array.DESCENDING | 2 |
| 同じ値がある場合に、ソートが終了 | Array.UNIQUESORT | 4 |
| インデックス番号の配列で値を返す | Array.RETURNINDEXEDARRAY | 8 |
| 数値でソート | Array.NUMERIC | 16 |
例えば、こんなコードがあったとして、名前で降順に並べ替えたいって時
var list1:Array = [{name:"apple",price:100},{name:"orange",price:80},{name:"banana",price:110},{name:"peach",price:150}];
//定数で指定
list1.sortOn("name",Array.DESCENDING);
//数値で指定
//list1.sortOn("name",2);
for(var i:uint =0;i< list1.length; i++){
trace(list1[i].name + ":" + list1[i].price);
}
これを実行すると…
peach:150
orange:80
banana:110
apple:100
値段で降順にしたいって場合は、こんな感じ。
var list1:Array = [{name:"apple",price:100},{name:"orange",price:80},{name:"banana",price:110},{name:"peach",price:150}];
//定数で指定
list1.sortOn("price", Array.NUMERIC | Array.DESCENDING);
//数値で指定
//list1.sortOn("price",16 | 2);
for(var i:uint =0;i< list1.length; i++){
trace(list1[i].name + ":" + list1[i].price);
}
これを実行すると…
peach:150
banana:110
apple:100
orange:80
どちらでも、OKみたい。
ただし、定数で指定した場合は、コードヒントが有効になるそうな…
ふむふむ、忘れないようにメモしとく。
★大いに参考にさせていただいた記事
- ランキング作る時の配列(Array)操作(trick7さん)
- Newer: 画像を保存すると、自動的に拡大される?
- Older: iPhone 3GSに浮気してみた
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://flabaka.com/blog/wp-trackback.php?p=1556
- Listed below are links to weblogs that reference
- 配列のソートについてのメモ from flabaka