[英]Casting primitive data type array to an OO array
是否有一種優雅,干凈的方法將原始數據類型double
數組轉換為OO Double
數組(例如,將double[]
轉換為Double[]
)?
有一些不錯的解決方案,例如
int[] intArray = { ... };
Integer[] what = Arrays.stream( intArray ).boxed().toArray( Integer[]::new );
Integer[] ever = IntStream.of( intArray ).boxed().toArray( Integer[]::new );
(從此處獲取 ),但這需要Java 8 。 對於Java 7和更低版本,是否存在類似的優雅,高效的方式?
如果您想要一個可與Java 7一起編譯的內襯,則可以使用Apache Commons中的ArrayUtils 。 例如
Integer[] what = ArrayUtils.toObject(intArray);
適用於任何原始類型。 比您發布的Java 8代碼更“優雅”和“簡潔”。 如果要避免使用Apache Commons之類的庫,恐怕您必須使用for循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.