二维地图Java

Him*_*nAB 2 java hashmap matrix

我需要一种数据结构,我可以以二维方式存储我的信息.例如,想象一个包含用户项评级的表.我需要为所有用户存储所有评级.比方说,用户u1.我需要为用户u1和u2以及u3和所有其他用户存储评级.但问题是我还需要存储所有项目的所有评级.例如,我需要存储所有用户为每个项目提供的评级.所以我需要类似地图的东西,对于用户来说,密钥是用户ID,值是评级集.我可以轻松地做到这一点.但我的问题是如何存储物品的评级.例如,密钥是项目ID的映射,值是提供的评级集合,是该项目的用户.我想上传一个表,但由于我没有足够的声誉,我不能这样做.所以想象一个像二维矩阵的表,行是用户,列是项.是否有可以做到这一点的数据结构?或者我应该建立两个不同的地图?也许有一个比Map更好的选择但是因为我必须为我的问题选择一个标题我写了地图.

谢谢

Ale*_*tin 6

您可以使用免费的Guava库中的Table

Table<Integer, String, Double> table = HashBasedTable.create();

table.put(1, "a", 2.0);
double v = table.get(1, "a"); // getting 2.0
Run Code Online (Sandbox Code Playgroud)