有没有办法将对象附加到列表并以功能性非强制方式将结果返回到一行?如果原始列表也不应该变异,你会怎么做?允许使用Java 8.
我已经知道如何在一行中连接两个列表.(来源)
List listAB = Stream.concat(listA.stream(), listB.stream()).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
我也知道如何从一行中的对象列表.
List listO1 = Collections.singletonList(objectA);
List listO2 = Stream.of(objectA, objectB).collect(Collectors.toList());
List listOO = Arrays.asList(objectA, objectB);
Run Code Online (Sandbox Code Playgroud)
有没有什么比用listB第一行替换下面几行的更好的东西了?
有连接多个的方法ArrayLists吗?
例如:
ArrayList<Integer> a
ArrayList<Integer> b
ArrayList<Integer> c
ArrayList<Integer> d = a + b + c
Run Code Online (Sandbox Code Playgroud)
其中d是一个单独的ArrayList<Integer>,包含保留顺序中a,b,c的所有值
我有两个清单;
val keys: List<String> = listOf("key1", "key2", "key3"...)
val values: List<String> = listOf("value1", "value2", "value3"...)
Run Code Online (Sandbox Code Playgroud)
我怎样才能将它们合二为一List<Hashmap<Key,Value>>?喜欢;
println(List<Hashmap<Key,Value>>): [[key1 = value1], [key2 = value2], [key3 = value3]...
我一直在谷歌上搜索,我找到了答案.番石榴中有一个Iterables.concat.但这会返回一个Iterable,接下来我要做的就是对结果进行排序. Collections.sort发生在一个List,而不是一个Iterable,所以我不得不转换Iterable成List作为我的下一个步骤.是否有更直接的方法来组合两个Lists然后对结果进行排序?
我在Java中有一个HashMaps的ArrayList,我想将它附加到另一个类似的列表,有没有办法做到这一点,以便生成的数组列表保留顺序.
例如:
List<Map<String, String>> list1 = new ArrayList<HashMap<String, String>>();
List<Map<String, String>> list1 = new ArrayList<HashMap<String, String>>();
list1.add(hm1);
list1.add(hm2);
list1.add(hm3);
list2.add(hm4);
list2.add(hm5);
list2.add(hm6);
Run Code Online (Sandbox Code Playgroud)
我想要的新列表是:
//list 3 = list1 + list2;
list3 = {hm1, hm2, hm3, hm4, hm5, hm6};
Run Code Online (Sandbox Code Playgroud)
怎么做?
java ×4
list ×4
arraylist ×1
collections ×1
collectors ×1
dictionary ×1
guava ×1
java-8 ×1
java-stream ×1
kotlin ×1