java - 如何通过一个键字段从Map中获取值?

标签 java java-8

我有一张 map :

public class MyKey {
    ...
    private long id;
    ...
}

Map<MyKey, String> myMap;

如何通过MyKey.id字段从myMap获取值?

最佳答案

请用 C# 找到回复。我认为我们可以使用 Linq 表达式来实现相同的目的。请查找下面的示例代码希望对您有所帮助。

    public class MyKey
    {
        public long ID { get; set; }
    }

    static void Main(string[] args)
    {
        Dictionary<MyKey, String> myMap = new Dictionary<MyKey, string>();
        myMap.Add(new MyKey() { ID = 100 }, "One");
        myMap.Add(new MyKey() { ID = 200 }, "Two");
        myMap.Add(new MyKey() { ID = 300 }, "Three");

        long searchKey = 200;
        string value = myMap[myMap.Keys.FirstOrDefault(x => x.ID == searchKey)];
    }

关于java - 如何通过一个键字段从Map中获取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40840189/

相关文章:

java - 方法中带有 "return"的可选 java 8

Java 8流和列表分组

java - 如何给图片添加文字?

java - 如何定义泛型类的 JNI 方法签名?

java - 如何使用分类器访问 jar?

java - 使用 Java 8 构建 Gradle

Java 8 : how to 'JOIN' two Maps having the same Keys?

java - 使用继承避免代码重复

java - 在 Web 应用程序中嵌入聊天

java - Java 11 中 Java 8 的 JVM 标志的替代方案