スレ立てるまでもない質問はここで 130匹目
■ このスレッドは過去ログ倉庫に格納されています
0754デフォルトの名無しさん
2013/11/18(月) 20:49:48.68まず一般的な分類から:
・collection
複数の同じ種類の要素の集まりを表す最も一般的な名前
collection は順序性の有無と索引付けの有無で分類される
・ordered collection
順序性のあるcollectionであり、これをsequenceとも呼ぶ
array や list、そして stream が sequence の一種になるし、queue や stack も含まれる
・unordered collection
順序性のない collection であり、その代表例が set(集合) や bag(多重集合)
・indexed collection
索引付けされキーでアクセス可能な collection であり、array や hash が含まれる
実際の collection 実装は効率や多重継承の有無といった理由により様々な選択肢がある
たとえばRubyの場合、1.8までHashクラスは順序性の無い自然な実装だったけど、
1.9からは順序性を持つよう仕様が変更された
またPythonのコレクションには不変なシーケンスとしてタプル(tuple)があるけど、
一般にタプルは(コレクションではなく)異なる種類の複数要素の組合せを表現する
(レコードや構造体と同様な)直積構造に分類されるから、誤った命名だと言える
■ このスレッドは過去ログ倉庫に格納されています