Java 由元组及其值组成的记录的有效数据结构

Java 由元组及其值组成的记录的有效数据结构,java,Java,我想存储一个元组和一个值作为条目。我的意思是这样的 A B -> 1 A C -> 2 E F -> 3 C D -> 4 前两个值总是唯一的,从某种意义上说,A和B只一起出现一次。考虑到我可能需要高效地从一个条目中获取这三个字段中的任何一个字段,为此,高效的数据结构是什么 如果可能,请提供一些相关代码 一张地图就行了。您需要有一个对象来表示前两项。确保在新类上正确实现了hashCode和equals方法。然后可以使用该类作为密钥 Map<MyKeyClass,

我想存储一个元组和一个值作为条目。我的意思是这样的

A B -> 1
A C -> 2
E F -> 3
C D -> 4
前两个值总是唯一的,从某种意义上说,A和B只一起出现一次。考虑到我可能需要高效地从一个条目中获取这三个字段中的任何一个字段,为此,高效的数据结构是什么

如果可能,请提供一些相关代码

一张地图就行了。您需要有一个对象来表示前两项。确保在新类上正确实现了hashCode和equals方法。然后可以使用该类作为密钥

Map<MyKeyClass, Integer> map = new HashMap<MyKeyClass, Integer>();
map.put(new MyKeyClass("A", "B"), 1);
map.put(new MyKeyClass("A", "C"), 2);
试试这个:

public class MyData{
   public char name, fname;
    public int value;

public Foo(char name, char fname, int value){
    this.name = name;
    this.fname = fname;
}
}

我建议您使用HashMap,例如:

public class Test {
    public void TestHashMap() {
        Map<Tuple<String,String>, Integer> myMap = new HashMap<Tuple<String,String>, Integer>();
        myMap.put(new Tuple<String,String>("A","B"), 1);
        myMap.put(new Tuple<String,String>("A","C"), 2);

        myMap.get(new Tuple<String,String>("A","C"));
    }
}

你试过什么吗?也许是有什么?没有什么能让它们独一无二。还缺少构造函数中的“值”设置。已同意。并尽可能使映射键的类不可变。