Java int数组到HashMap 和IntStream(Java int array to HashMap with IntStream)

编程入门 行业动态 更新时间:2024-10-25 08:18:14
Java int数组到HashMap 和IntStream(Java int array to HashMap with IntStream)

我需要取每个数组元素的平方并将一个条目插入到hashmap中,并将此值作为键,并将true作为值。 我试过这样做,但我无法解决它。

int [] array = {3, 1, 4, 6, 5}; HashMap<Integer, Boolean> map = IntStream.of(array) .map(x -> x*x) .collect(Collectors.toMap(p -> Integer.valueOf(p), Boolean.valueOf(true)));

I need to take square of each array element and insert a entry to hashmap with this value as a key and true as a value. I have tried to do it like that but I can not fix it.

int [] array = {3, 1, 4, 6, 5}; HashMap<Integer, Boolean> map = IntStream.of(array) .map(x -> x*x) .collect(Collectors.toMap(p -> Integer.valueOf(p), Boolean.valueOf(true)));

最满意答案

您可以IntStream并继续使用Stream<Integer> :

Map<Integer, Boolean> map = IntStream.of(array) .map(x -> x*x) .boxed() .collect(Collectors.toMap(p -> p, p -> Boolean.valueOf(true)));

请注意, Collectors.toMap返回Map而不是HashMap 。

You can box the IntStream and proceed with a Stream<Integer> :

Map<Integer, Boolean> map = IntStream.of(array) .map(x -> x*x) .boxed() .collect(Collectors.toMap(p -> p, p -> Boolean.valueOf(true)));

Note that Collectors.toMap returns a Map, not a HashMap.

更多推荐

本文发布于:2023-08-07 18:53:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1465947.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数组   int   Java   array   IntStream

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!