JAVA有没有谷歌的番石榴界面可以取代地图?

JAVA有没有谷歌的番石榴界面可以取代地图?,java,collections,guava,Java,Collections,Guava,例如,代码是这样的,有点复杂,我如何在这个上下文中使用google的guava lib并清理代码 @Test public void testMap2() { Map<String, Map<String, String>> map = new HashMap<String, Map<String, String>>(); addToMap(map, "cib", "1004", "2"); addToMap(map, "c

例如,代码是这样的,有点复杂,我如何在这个上下文中使用google的guava lib并清理代码

@Test
public void testMap2() {
    Map<String, Map<String, String>> map = new HashMap<String, Map<String, String>>();
    addToMap(map, "cib", "1004", "2");
    addToMap(map, "cib", "1005", "3");
    addToMap(map, "cib", "1006", "1");
    addToMap(map, "cib", "1007", "5");

    addToMap(map, "icbc", "1004", "2");
    addToMap(map, "icbc", "1005", "3");
    addToMap(map, "icbc", "1006", "1");
    addToMap(map, "icbc", "1007", "5");
    System.out.println(map);

}

private void addToMap(Map<String, Map<String, String>> map, String key, String name, String value) {
    if(map.containsKey(key)) {
        map.get(key).put(name, value);
    } else {
        Map<String, String> map1 = new HashMap<String, String>();
        map1.put(name, value);
        map.put(key, map1);
    }
}
是的,它叫:

关联一对有序键(称为行键)的集合 和一个列键,具有单个值。一张桌子可能是稀疏的,带有 只有一小部分行键/列键对具有 对应的值。 对应于给定行键的映射可以 将被视为以列为键的映射。反之亦然 可用,将列与行键/值映射关联。请注意, 在某些实现中,通过列键进行的数据访问可能具有更少的可用性 支持的操作或性能比按行键访问数据差

有几个实现:

由二维数组支持,请参阅文档, 实现装饰器模式, ~HashMap是的,它叫:

关联一对有序键(称为行键)的集合 和一个列键,具有单个值。一张桌子可能是稀疏的,带有 只有一小部分行键/列键对具有 对应的值。 对应于给定行键的映射可以 将被视为以列为键的映射。反之亦然 可用,将列与行键/值映射关联。请注意, 在某些实现中,通过列键进行的数据访问可能具有更少的可用性 支持的操作或性能比按行键访问数据差

有几个实现:

由二维数组支持,请参阅文档, 实现装饰器模式, ~HashMap
Table<Vertex, Vertex, Double> weightedGraph = HashBasedTable.create();
weightedGraph.put(v1, v2, 4);
weightedGraph.put(v1, v3, 20);
weightedGraph.put(v2, v3, 5);

weightedGraph.row(v1); // returns a Map mapping v2 to 4, v3 to 20
weightedGraph.column(v3); // returns a Map mapping v1 to 20, v2 to 5