Java复式表
有谁知道可以下载的 Java 中的复式表实现吗?
我需要做这样的事情
1 2 3
_______
a| x y z
b| h l m
c| o a k
table.get(a,1)
会返回 x
当然,它应该使用任何对象作为键、值等
Does anyone know a double entry table implementation in Java I can download ?
I need to do something like this
1 2 3
_______
a| x y z
b| h l m
c| o a k
table.get(a,1)
would return x
Of course, it should use any Object as key, value, etc
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
有两种基本方法,具体取决于您的需求。
一种是创建一个
Hashtable
(或类似的)Hashtable
。另一种方法是构建您自己的数据类型来表示(整数,字符串)对,因此您可以执行以下操作:
There are two basic approaches, depending on your needs.
One is to make a
Hashtable
(or similar) ofHashtable
s.Another approach is to build your own datatype that represents an (Integer, String) pair, so you can do:
你的问题的答案部分在于之前关于SO的问题:存储在 HashMap 中无法正确检索键->值
Java 泛型 Pair
The answer to your question partially lies in a previous questions on SO:
Java generics Pair<String, String> stored in HashMap not retrieving key->value properly
我假设您有一个字符/对象数组和一个数量,并且希望在表中相互交叉。您可以将每个字符映射到 0 .. qtyOfCharacters 之间的数字,并简单地创建一个二维数组 Object[][] table = new Object[A][B],其中 A 是刚刚映射的字符/对象的数量,B 是列的数量。
要将字符/对象映射到数字,您应该使用 HashMap/HashTable。
这个想法是,如果您访问“a,3”处的元素,您应该编写 table[ charmap.get("a")][ 3]
I'm assuming you have an array of characters/objects and a quantity and want cross each other in your table. You could map each character to a number between 0 .. qtyOfCharacters and simply create a bidimensional array Object[][] table = new Object[A][B], where A is the quantity of characters/object just mapped, and B is the quantity of columns.
To map the characters/object to numbers you should use a HashMap/HashTable.
The idea is that if you access the element at "a,3" you should write table[ charmap.get("a")][ 3]