在不修改或外部庫的情況下在Java 中連接列表
合併兩個列表時,通常希望避免修改原始列表而僅使用JDK。以下是各種方法的綜合分析:
原始方法:
如問題中所示,建立一個新列表,從兩個輸入列表複製元素,然後將它們添加到新列表的方法很簡單:
List<String> newList = new ArrayList<>(); newList.addAll(listOne); newList.addAll(listTwo);
JDK 1.3版本:
為了相容Java 1.3,可以使用Iterator.addAll 方法:
List<String> newList = new ArrayList<>(); newList.addAll(listOne); newList.addAll(listTwo.iterator());
Java 8 串流連接:
Java 8 串流連接:
List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()) .collect(Collectors.toList());
Java 8 串流連接:
Java >在Java 8及更高版本中,流串聯提供了簡潔高效的方式替代方案:List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();
Java 16 toList 方法:
Java 16 引入了toList 方法,簡化了流收集:List<String> newList = new ArrayList<>().addAll(listOne).addAll(listTwo);
單線解:
結合前面的方法可以得到單行:注意:注意:所有這些方法都滿足規定了不修改原始清單、僅使用JDK、不依賴外部函式庫的條件。提供的解決方案範圍從經典技術到現代 Java 功能,提供基於平台相容性和編碼偏好的靈活性。以上是如何在不修改原來的情況下僅使用JDK連接兩個Java列表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!