1. ホーム
  2. java

[解決済み] プリミティブなロング配列からロングリストへの変換

2022-05-13 13:08:35

質問

これはちょっと簡単で、頭を使うような質問かもしれませんが、私の最初の試みは驚くことに完全に失敗しました。 私はプリミティブなlongの配列を取り、それをリストに変えたいと思い、それを次のように試みました。

long[] input = someAPI.getSomeLongs();
List<Long> inputAsList = Arrays.asList(input); //Total failure to even compile!

正しいやり方は?

どのように解決するのですか?

apache commons langのArrayUtilsを使うと便利だと思いました( JavaDoc , Maven 依存関係 )

import org.apache.commons.lang3.ArrayUtils;
...
long[] input = someAPI.getSomeLongs();
Long[] inputBoxed = ArrayUtils.toObject(input);
List<Long> inputAsList = Arrays.asList(inputBoxed);

また、逆のAPIも持っています

long[] backToPrimitive = ArrayUtils.toPrimitive(objectArray);

EDITです。 は、コメントと他の修正で提案されたように、リストへの完全な変換を提供するために更新されました。