集合(セット)から配列(リスト)に変換するには (toArray / toIndexedSeq / toSeq / toIterable / toList / list)

集合から配列に変換する方法。

Java

java.util.Set から配列に変換する例

String[] arr = new String[st.size()];
st.toArray(arr);

Signature:

java.util.Set から java.util.List に変換する例

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

Set<String> st = ...;
List<String> lst = new ArrayList<String>(st);

Signature:

Scala

Signature:

def scala.collection.TraversableOnce[E]#toArray: Array[E]
def scala.collection.TraversableOnce[E]#toIndexedSeq: IndexedSeq[E]
def scala.collection.TraversableOnce[E]#toSeq: Seq[E]
def scala.collection.TraversableOnce[E]#toIterable: Iterable[E]
def scala.collection.TraversableOnce[E]#toList: List[E]

val st = Set("abc", "def", "ghi");

val arr = st.toArray;
println(arr);
// => [Ljava.lang.String;@2b4935f3
// Javaの配列になる

val lst = st.toList;
println(lst);
// => List(abc, def, ghi)

Python

list という関数でセット(集合)からリストに変換したものを返す。

list(st)

list | Python 2.7 documentation
http://docs.python.jp/2/library/functions.html#list

list | Python 3 documentation
http://docs.python.jp/3/library/stdtypes.html#list

Ruby / JRuby

Setクラスのインスタンスから配列を取得するには to_a メソッドを呼び出すか、 Arrayを直接生成する。

require 'set'

st = Set.new ["abc", "def", "ghi"]

p st
# => #<Set: {"abc", "def", "ghi"}>

p st.to_a
# => ["abc", "def", "ghi"]

p Array[*st]
# => ["abc", "def", "ghi"]
このサイトは筆者(hydrocul)の個人メモの集合です。すべてのページは永遠に未完成です。