这可能是一个简单的,总机问题,但我的第一次尝试出乎意料地完全失败了。我想获取一组原始的long并将其转换为列表,我试图这样做:

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

什么是正确的方法?

最佳答案

我发现使用apache commons lang ArrayUtils(JavaDocMaven dependency)很方便

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);

编辑:已更新,可以根据注释和其他修复程序的建议提供对列表的完整转换。

10-08 00:05