funfunfun35
便利なorderedCollectionを使ってみるです。
「orderedCollection」を使うと「Array」にはないお便利なメソッドがあるです。
それに要素数を後から増減できるしね。
「sortedCollection」とか「DictionaryCollection」とかもちびっとだけ・・・。
ではさっそく「Array」を「orderedCollection」に変換してみましょう。
■orderedCollectionに変換する
Alt + d ( Cmd + d )
--------------------------------------------
oc _ ac asOrderedCollection
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(10 20 55 40) . |
これで以下のメソッドが使えるようになります。
●要素を付け足せます。(要素の最後に追加される)
Alt + d ( Cmd + d )
--------------------------------------------
oc add: 55
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(10 20 55 40 55) . |
●一番最初に要素を付け足します。
Alt + d ( Cmd + d )
--------------------------------------------
oc addFirst: 5
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(5 10 20 55 40 55) . |
●最後に要素を付け足します。
Alt + d ( Cmd + d )
--------------------------------------------
oc addLast: 66
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(5 10 20 55 40 55 66) . |
他にもこんなメソッドがあるよん
--------------------------------------------
add: befor:
add: after:
add: afterIndex:
addAll:
addAllFirst:
addAllLast:
--------------------------------------------
●最初の要素を削除します。
Alt + d ( Cmd + d )
--------------------------------------------
oc removeFirst
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(10 20 55 40 55 66) . |
●最後の要素を削除します。
Alt + d ( Cmd + d )
--------------------------------------------
oc removeLast
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(10 20 55 40 55) . |
●要素の「10」を削除します。
Alt + d ( Cmd + d )
--------------------------------------------
oc remove: 10
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(20 55 40 55) . |
●2番目の要素を削除します。
Alt + d ( Cmd + d )
--------------------------------------------
oc removeAt: 2
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(20 40 55) . |
●削除したいものがない場合に処理をできるというのもあります。
要素に「100」がなかったら一番最初に「100」を追加します。
Alt + d ( Cmd + d )
--------------------------------------------
oc remove: 100 ifAbsent: [oc addFirst: 100]
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
oc an OrderedCollection(100 20 40 55) . |
■sortedCollectionに変換する
sortedCollectionに変換すると小さい順に並べ替えられます。ストリングの場合はアルファベット順。
Alt + d ( Cmd + d )
--------------------------------------------
sc _ oc asSortedCollection
--------------------------------------------
■Arryに変換する
ってかんじでArryに戻してみましょう。
Alt + d ( Cmd + d )
--------------------------------------------
ac _ sc asArray
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
■DictionaryCollection
DictionaryCollectionはキーで配列の要素を呼び出せるです。
●DictionaryCollectionを新たに作る
Alt + d ( Cmd + d )
--------------------------------------------
dc _ Dictionary new.
dc at: #apple put: 2;
at: #bannana put: 5;
at: #peach put: 3;
at: #orange put: 4;
at: #melon put: 1.
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
りんごが2つにバナナが5つ、メロン1つ、オレンジ4つ、モモが3つね!!
dc a Dictionary(#apple->2 #bannana->5 #melon->1 #orange->4 #peach->3 ). |
●キーを使って要素を取り出す。
プリント・イット Alt + p ( Cmd + p )
●要素を入れ替える
Alt + d ( Cmd + d )
--------------------------------------------
dc at: #orange put: 1;
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
dc a Dictionary(#apple->2 #bannana->5 #melon->1 #orange->1 #peach->3 ). |
●要素を追加する
Alt + d ( Cmd + d )
--------------------------------------------
dc at: #grape put: 6.
--------------------------------------------
確認の為プリント・イット Alt + p ( Cmd + p )
dc a Dictionary(#apple->2 #bannana->5 #grape->6 #melon->1 #orange->1 #peach->3 ). |
▲PREV ------ ● TOP ● ------ NEXT▼
■ MEMO ■
Links to this Page
- FunFunFunMorphic last edited on 25 March 2004 at 5:25:44 am by tk0005-202x210x196x109.ap-TK.usen.ad.jp
- funfunfun34 last edited on 31 March 2007 at 5:23:23 pm by localhost
- funfunfun36 last edited on 18 June 2007 at 5:38:10 am by localhost.localdomain