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 中的列表與陣列
