在Java中,使用Stream API的collect()
方法可以將流中的元素收集到一個集合中。要進行類型轉換,你需要使用map()
方法將流中的元素轉換為目標類型,然后再使用collect()
方法將它們收集到一個集合中。
以下是一個示例,演示了如何將一個Stream<String>
轉換為Stream<Integer>
,然后將其收集到一個List<Integer>
中:
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> stringList = Arrays.asList("1", "2", "3", "4", "5");
// 使用map()方法將Stream<String>轉換為Stream<Integer>
List<Integer> integerList = stringList.stream()
.map(Integer::parseInt)
.collect(Collectors.toList());
System.out.println(integerList);
}
}
在這個示例中,我們首先創建了一個包含字符串的列表stringList
。然后,我們使用stream()
方法創建了一個Stream<String>
。接下來,我們使用map()
方法將流中的每個字符串元素轉換為整數,使用Integer::parseInt
方法引用。最后,我們使用collect()
方法將轉換后的整數流收集到一個List<Integer>
中。
運行此代碼將輸出以下內容:
[1, 2, 3, 4, 5]
這表明我們已成功地將Stream<String>
轉換為Stream<Integer>
,并將其收集到一個List<Integer>
中。