我需要一种方法来保留一个值的两个键 - 正是Guavan的HashBasedTable所做的.问题是它在迭代值时不保留插入顺序.是否有任何优雅的解决方案让它工作?它不一定是Guava,但我不想让依赖的项目膨胀.
我试图使用提到的ImmutableTable - 我还没有找到任何例子.在构建这样的表时,我到处都是NPE:
ImmutableTable<String, String, AbstractUnit> units;
ImmutableTable.Builder<String, String, AbstractUnit> builder = units.builder();
builder.put(unit1.getType(), unit1.getName(), unit1);
...
units = builder.build();
Run Code Online (Sandbox Code Playgroud)
当gettinb units.values()时,我将获得NPE.另外,我能否在表格中修改AbstractUnit的值?
Ben*_* L. 11
您可以为表指定后端映射结构.指定LinkedHashMap将保持插入顺序.
Table<String,String,AbstractUnit> units = Tables.newCustomTable(new LinkedHashMap<>(), LinkedHashMap::new);
Run Code Online (Sandbox Code Playgroud)
我尝试使用@Louis Wasserman所描述的ImmutableMap,它正在进行自然排序.
| 归档时间: |
|
| 查看次数: |
1925 次 |
| 最近记录: |