JavaStreamを使用してリストをマップに変換する

ブログの内容が変更される場合があり、最初のブログが最新であり、他のブログのアドレスが同期していない可能性がありますので、よく確認してください。https://blog.zysicyj.top

最初のブログアドレス

シリーズ記事アドレス


Java Stream を使用して List を Map に変換するメソッドが利用可能ですCollectors.toMap()toMap()このメソッドは 2 つのパラメーターを受け入れます。最初のパラメーターはマップのキーを抽出するために使用される関数であり、2 番目のパラメーターはマップの値を抽出するために使用される関数です。以下に例を示します。

import java.util.*;
import java.util.stream.Collectors;

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

        Map<String, Integer> ageByName = people.stream()
                .collect(Collectors.toMap(Person::getName, Person::getAge));

        System.out.println(ageByName);
    }
}

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;
    }
}

上の例には、Person名前や年齢などの個人情報を表すクラスがあります。名前をキー、年齢を値としてList<Person>1 対 1 に変換しますキー抽出関数、値抽出関数としてMap<String, Integer>使用します。最後に、結果を出力します。Person::getNamePerson::getAge

この記事はmdniceマルチプラットフォームによって公開されています

おすすめ

転載: blog.csdn.net/njpkhuan/article/details/132753380