亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java中collectors.tomap的用法是什么

小億
123
2023-12-27 23:44:30
欄目: 編程語言

在Java中,Collectors.toMap()方法用于將流(Stream)元素收集到Map集合中。它接受兩個參數,分別是keyMapper和valueMapper,用于指定如何生成Map的鍵和值。

語法:

public static <T, K, U> Collector<T, ?, Map<K,U>> toMap(Function<? super T, ? extends K> keyMapper, Function<? super T, ? extends U> valueMapper)

參數說明:

  • T:流元素的類型
  • K:生成Map的鍵的類型
  • U:生成Map的值的類型
  • keyMapper:將流元素映射為鍵的函數
  • valueMapper:將流元素映射為值的函數

示例: 假設有一個Person類,包含name和age屬性。現在有一個Person的List,我們想將List中的Person對象按照name作為鍵,age作為值,生成一個Map。

import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<Person> persons = List.of(
                new Person("Alice", 25),
                new Person("Bob", 30),
                new Person("Charlie", 35)
        );

        Map<String, Integer> map = persons.stream()
                .collect(Collectors.toMap(Person::getName, Person::getAge));
        System.out.println(map);
    }
}

class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

輸出結果:

{Alice=25, Bob=30, Charlie=35}

在上面的示例中,通過Collectors.toMap(Person::getName, Person::getAge),將List中的Person對象按照name作為鍵,age作為值,生成了一個Map。最后輸出結果為{Alice=25, Bob=30, Charlie=35}

0
原阳县| 黎川县| 黔西县| 名山县| 河南省| 闽侯县| 青浦区| 宜春市| 根河市| 资源县| 泰顺县| 类乌齐县| 伊川县| 内丘县| 淮阳县| 萝北县| 东源县| 开远市| 白河县| 垣曲县| 岱山县| 广昌县| 永定县| 大洼县| 新建县| 大石桥市| 宿迁市| 收藏| 碌曲县| 独山县| 通城县| 永春县| 尼勒克县| 武定县| 肥西县| 嘉义县| 玉溪市| 吉安市| 永仁县| 汉沽区| 十堰市|