java - 在这种情况下,TreeBasedTable.create().rowMap().get(rowKey) 将返回一个空映射

标签 java dictionary collections guava

在我的项目中使用了 Guava 表。版本是15.0。不知何故,在我的日志中,特定行键的映射像 {rowkey={}} 一样为空,但我无法复制它。 我尝试了以下方法。

Table table = TreeBasedTable.create();
table.put(rowkey, null,null)  // gives compilation error

table.put(rowkey, "",null)    // giving compilation error

table.put(rowkey, null,"")    // giving compilation error

table.put(rowkey, "","")       // printing like {rowkey={=}}

如果我打印 table.rowMap(),请帮助我如何获得 {rowkey={}} 即从 table.rowMap().get(rowKey) 返回的 map 为空(不是 null)。

最佳答案

table.rowMap().get(rowKey) 将返回一个 Map,如果该 Map 为 null,可能的情况是根本没有键“rowkey”。

    TreeBasedTable tbt = TreeBasedTable.create();
    Object object = tbt.rowMap().get("rowkey");
    System.out.println(object);

输出为空。

这个怎么样?

    TreeBasedTable tbt = TreeBasedTable.create();
    tbt.put("rowKey", "columnKey", "value");
    Map map = (Map) tbt.rowMap().get("rowKey");
    System.out.println(map); // {columnKey=value}
    map.clear();
    System.out.println(map); // output is {}                                                                                                                          System.out.println(table.rowMap()); // in this case also output is {} while it 

应该是{rowkey-{}} 如果 rowMap().get("rowKey") 不为 null,则表示确实有值放入 TreeBasedTable 中。然后就可以清除 map 了。

关于java - 在这种情况下,TreeBasedTable.create().rowMap().get(rowKey) 将返回一个空映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49821573/

相关文章:

arrays - swift:修改字典中的数组

python - 字典不给变量赋值

sql - 示例 [英文] 用于填充表的字典 SQL 脚本?

ios - NSMutableDictionary 增删改 KVO

java - 如何检查列表是否包含 Java 中给定顺序的子列表

.net - 比较两个集合是否相等,无论其中项目的顺序如何

java - Spring Boot、JPA 和 MySQL 返回空结果

java - Android - 无法执行任务 : the task has already been executed

java - SWT - 创建一个数字网格,我希望能够使用键盘进行切换

Java 警报框架