Java 中把 Int 陣列轉換為陣列列表
-
使用 Java 8 Stream 將一個
int
陣列轉換為 ArrayList -
在 Java 中使用增強的
for
迴圈將一個int
陣列轉換為一個 ArrayList -
使用
Guava
將int
陣列轉換為整數物件列表
本教程介紹了我們如何在 Java 中把一個原始 int
的陣列轉換為 ArrayList
。我們不能建立一個原始資料型別的 ArrayList
,所以我們將使用 Integer
物件。
使用 Java 8 Stream 將一個 int
陣列轉換為 ArrayList
這個例子使用了 Arrays
類的 Stream
API,它提供了幾種方法來操作一個陣列。為了使之工作,我們首先建立一個 int 元素的陣列,並使用 Arrays
類呼叫 stream()
方法。但是由於 intArray
的項是基本資料型別的,所以我們必須使用 boxed()
將每個基元框定為一個 Integer
物件。
collect()
方法收集這些項,Collectors.toList()
將它們轉換為一個列表。我們可以將返回的列表轉換為 ArrayList<Integer>
。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.stream.Collectors;
public class IntToInteger {
public static void main(String[] args) {
int[] intArray = {10, 20, 30, 40};
ArrayList<Integer> integerArray =
(ArrayList<Integer>) Arrays.stream(intArray).boxed().collect(Collectors.toList());
System.out.println(integerArray);
}
}
輸出:
[10, 20, 30, 40]
在 Java 中使用增強的 for
迴圈將一個 int
陣列轉換為一個 ArrayList
我們可以使用手動方法將陣列中的每個專案新增到 ArrayList 中。這個方法不使用任何函式,相反,一個增強的 for
迴圈就足以讓它發揮作用。我們建立一個包含一些 int
型別元素的陣列 intArray
和一個初始大小等於 intArray
大小的空 ArrayList。
現在,由於 ArrayList 的容量正好可以容納 intArray
的元素,我們可以使用增強的 for
迴圈,並呼叫 add()
方法將一個專案新增到 ArrayList 中。for
迴圈將在陣列中迭代,每一個專案都會被新增到 ArrayList 中。
我們可以在輸出中看到,我們得到的元素與 intArray
相同。
import java.util.ArrayList;
public class IntToInteger {
public static void main(String[] args) {
int[] intArray = {13, 17, 21, 23};
ArrayList<Integer> integerArray = new ArrayList<>(intArray.length);
for (int i : intArray) {
integerArray.add(i);
}
System.out.println(integerArray);
}
}
輸出:
[13, 17, 21, 23]
使用 Guava
將 int
陣列轉換為整數物件列表
在這個例子中,我們使用了包含在 Guava 庫中的 Ints
類。為了使用該庫的函式,我們將其 maven 依賴關係加入到專案中。
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.5-jre</version>
</dependency>
intArray
是一個包含 int
型別元素的陣列。我們使用 Ints
類來呼叫 asList()
,並將陣列作為引數傳遞。Ints.asList(intArray)
返回一個 Integer
物件的列表。
import com.google.common.primitives.Ints;
import java.util.List;
public class IntToInteger {
public static void main(String[] args) {
int[] intArray = {13, 17, 21, 23};
List<Integer> integerArray = Ints.asList(intArray);
System.out.println(integerArray);
}
}
輸出:
[13, 17, 21, 23]
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn相關文章 - Java Array
- 如何在 Java 中以十六進位制字串轉換位元組陣列
- 如何在 Java 中連線兩個陣列
- 用 Java 從陣列中刪除重複項
- 在 Java 中對陣列進行切片
- 在 Java 中不使用 sort() 方法對陣列進行排序
- Java 中的列表與陣列