小编GBl*_*ett的帖子

对于Java 8中的每个循环:在Java 8中编写以下代码的最佳方法是什么

在for循环和过滤方面,在Java 8中编写以下代码的最佳方法是什么?

boolean flag = true;
List<Feed> availableFeeds = data.getAvailableFeeds();
for (Feed feedElement : availableFeeds) {
    String type = feedElement.getType();
    if ("MatchState".equals(type)) {
        flag = false;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

java filtering

0
推荐指数
1
解决办法
88
查看次数

0
推荐指数
1
解决办法
122
查看次数

将List &lt;Map &lt;Long,String &gt;&gt;转换为List &lt;Long&gt; Java 8

我有一个地图列表,其中每个地图只有one key-value pair一个。我需要将其转换为仅键列表。我正在尝试使用流,如下所示:

List<Map<Long, String>> lst = // some data
List<Long> successList = lst.stream().map(ele -> ele.keySet().toArray()[0]).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

但是我最终收到以下错误:

java: incompatible types: inference variable T has incompatible bounds
  equality constraints: java.lang.Long
  lower bounds: java.lang.Object
Run Code Online (Sandbox Code Playgroud)

如何解决此问题,或者有什么更好的方法?

java collect java-8 java-stream

0
推荐指数
2
解决办法
169
查看次数

为什么不能将java.util.stream.IntStream转换为java.util.stream.Stream &lt;?扩展R&gt;

为什么不能 convert java.util.stream.IntStream to java.util.stream.Stream<? extends R>

    Stream<String> streamOfStrings = Stream.of("hello", "world");
    streamOfStrings.flatMap(String::chars).forEach(System.out::println);
Run Code Online (Sandbox Code Playgroud)

此代码给出了编译错误

Bad return type in method reference: cannot convert java.util.stream.IntStream to java.util.stream.Stream<? extends R>
Run Code Online (Sandbox Code Playgroud)

java java-stream

-2
推荐指数
1
解决办法
72
查看次数

标签 统计

java ×4

java-stream ×2

collect ×1

filtering ×1

java-8 ×1

regex ×1