Guava Hashtable 可以有不同数据类型的列吗?
Can Guava Hashtable have columns with different data types?
我需要创建一个 Guava Hashtable 并将整数和字符串值存储在不同的列中。这可以用番石榴哈希表来完成吗?
谢谢!
看看 Table documentation (HashBasedTable 只是 Table
的一个实现 - “...它基本上由 HashMap<R, HashMap<C, V>>
... 支持”)
单个 Table<R, C, V>
对象表示行键 R
、列键 C
和值 V
之间的单个映射,因此,您可以仅来自特定 Table
对象的单一类型的列。
要混合列,您可以创建两个共享相同键的 table 对象:
Table tableStringCol = HashBasedTable.create();
table.put(1, "doc_name", "Bill");
Table tableIntegerCol = HashBasedTable.create();
table.put(1, "doc_count", 10);
table.put(1, "doc_size", 15);
您还可以使用只有 String
列的单个 Table
对象,然后在获取值时,将相关列转换为 Integer
。
您可以阅读更多关于 Guava 的 Table
here
我需要创建一个 Guava Hashtable 并将整数和字符串值存储在不同的列中。这可以用番石榴哈希表来完成吗?
谢谢!
看看 Table documentation (HashBasedTable 只是 Table
的一个实现 - “...它基本上由 HashMap<R, HashMap<C, V>>
... 支持”)
单个 Table<R, C, V>
对象表示行键 R
、列键 C
和值 V
之间的单个映射,因此,您可以仅来自特定 Table
对象的单一类型的列。
要混合列,您可以创建两个共享相同键的 table 对象: Table tableStringCol = HashBasedTable.create(); table.put(1, "doc_name", "Bill"); Table tableIntegerCol = HashBasedTable.create(); table.put(1, "doc_count", 10); table.put(1, "doc_size", 15);
您还可以使用只有 String
列的单个 Table
对象,然后在获取值时,将相关列转换为 Integer
。
您可以阅读更多关于 Guava 的 Table
here