1. ホーム

[解決済み] [Solved] CollectionをListに変換する方法は?

2022-03-26 07:49:02

質問

を使っています。 TreeBidiMap から アパッチコレクション ライブラリを使用します。これを以下のような値でソートしたい。 doubles .

私の方法では Collection を使用した値の

Collection coll = themap.values();

というのは当然ながら問題なく動作します。

主な質問 私は今、(どちらが正しいかわからないが)どのように変換/キャストできるかを知りたい。 collList ソートできるように?

そして、ソートされた List オブジェクトから適切なキーを取得します。 TreeBidiMap ( themap を使用しています。 themap.getKey(iterator.next()) のリストに対するイテレータとなります。 doubles .

解決方法は?

List list = new ArrayList(coll);
Collections.sort(list);

Erel Segal Haleviが以下で述べているように、もしcollがすでにリストであれば、ステップ1をスキップすることができます。 しかし、それはTreeBidiMapの内部構造によるだろう。

List list;
if (coll instanceof List)
  list = (List)coll;
else
  list = new ArrayList(coll);