相关疑难解决方法(0)

如何将Map <String,String>转换为Map <Long,String>?(选项:使用番石榴)

我有一个Map<String, String>String关键无非是像"123"等我得到的数值,因为这个数值是从UI在我的JSF组件来数值.我不想更改UI组件的合同.

现在我想创建一个Map<Long, String>基于上面的内容Map,我transformMaps类中看到了一些方法但是所有方法都专注于转换值而不是键.

有没有更好的转换Map<String, String>方式Map<Long, String>

java guava

19
推荐指数
3
解决办法
3万
查看次数

使用转换后的键的类似字典的类

我想要一个类似字典的类,它在查找时透明地使用转换后的键,以便我可以编写

k in d          # instead of f(k) in d
d[k]            # instead of d[f(k)]
d.get(k, v)     # instead of d.get(f(k), v)
Run Code Online (Sandbox Code Playgroud)

等等(例如,想象一下f进行某种规范化,例如f(k)返回k.lower()。)

似乎我可以继承dict并覆盖各个操作,但并不是有一个集中位置来进行所有键都经过的这种转换。这意味着我必须覆盖所有__contains____getitem__get和可能的__missing__等。这变得太乏味且容易出错,并且不是很有吸引力,除非这种开销超过手动替换f(k)普通 上的每个调用的开销dict

python dictionary

5
推荐指数
1
解决办法
317
查看次数

标签 统计

dictionary ×1

guava ×1

java ×1

python ×1