簡體   English   中英

java中Stream Collectors.toList()中的不兼容類型

[英]Incompatible types in stream Collectors.toList() in java

我正在實現圖形表示。

Map<V, List<E<V>>> g = new HashMap<>();

Graph類的方法之一是

List<E<V>> getAllEdges() {
    List<E<V>> allEdges = new ArrayList<>();

    for(Map.Entry<V, List<E<V>>> entry: g.entrySet()) {
        allEdges.addAll(entry.getValue());
    }

    return allEdges;
}

但是我想用

List<E<V>> getAllEdges() {
    return  g.values().stream().collect(Collectors.toList());
}

但是我有一個錯誤

在此處輸入圖片說明

有沒有辦法為此使用流?

由於您的值已經輸入為List<E<V>.collect(Collectors.toList())如果要構建List<List<E<V>> ,則使用.collect(Collectors.toList())是合適的。

要解決此問題,請使用flatMap展平2D列表:

List<E<V>> getAllEdges() {
    return  g.values().stream().flatMap(List::stream).collect(Collectors.toList());
}

如何轉換 ArrayList<string> 至 ArrayList<object> using.collect(Collectors.toList() 在 Java stream<div id="text_translate"><p> 如何在 Java stream 中使用.collect(Collectors.toList()將ArrayList&lt;String&gt;轉換為ArrayList&lt;Object&gt;</p><p> 之前我用過</p><pre>CommonList = detailUtils.SelectIDValueGetterObservable(getActivity()).stream().forEach(i -&gt; CommonList.add(new foo(i));`</pre><p> 但是我遇到了這些<strong>副作用</strong></p><p> <a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html" rel="nofollow noreferrer">https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html</a></p><p> 這建議.collect(Collectors.toList()</p><p> 我們該怎么做</p></div></object></string>

[英]How can I convert ArrayList<String> to ArrayList<Object> using .collect(Collectors.toList() in Java stream

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

相關問題 Java Stream Collectors.toList()不會編譯 Java Stream:如何避免在 Collectors.toList() 中添加 null 值? 如何在Java 8流API中延遲初始化Collectors.toList()? Collectors.toList()中的差異LongStream VS流 Java 16的Stream.toList()和Stream.collect(Collectors.toList()的區別? .collect(Collectors.toList())和Java方法上的Streams Stream.toList() 會比 Collectors.toList() 表現更好嗎 Java 8 流:myList.stream().map(Foo::bar).collect(Collectors.toList()) 的簡寫 如何轉換 ArrayList<string> 至 ArrayList<object> using.collect(Collectors.toList() 在 Java stream<div id="text_translate"><p> 如何在 Java stream 中使用.collect(Collectors.toList()將ArrayList&lt;String&gt;轉換為ArrayList&lt;Object&gt;</p><p> 之前我用過</p><pre>CommonList = detailUtils.SelectIDValueGetterObservable(getActivity()).stream().forEach(i -&gt; CommonList.add(new foo(i));`</pre><p> 但是我遇到了這些<strong>副作用</strong></p><p> <a href="https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html" rel="nofollow noreferrer">https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html</a></p><p> 這建議.collect(Collectors.toList()</p><p> 我們該怎么做</p></div></object></string> 如何在Kotlin中的Java 8 Stream上調用collect(Collectors.toList())?
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM