java – 为什么Guava不提供一种转换地图键的方法
|
这个问题已经在这里发贴了:
我认为CollinD的答案是适当的:
这是真的,但实际上我不明白为什么它不是因为: >当密钥变换发生时,如果2个密钥“合并”,可能会引发运行时异常,或者我们可以传递一个标志来指示Guava为新计算的密钥获取多个可能值的任何值(failfast / failsafe可能性) 在做这样的事情时我看不到有什么缺点吗? 解决方法正如@CollinD所说,没有办法以懒惰的方式做到这一点.要实现get,您必须使用转换函数转换所有键(以确保发现任何重复项).因此,应用函数< K,NewK>映射< K,V>出来了 您可以安全地应用Function< NewK,K>到地图上: V value = innerMap.get( fn.apply(newK) ); 我没有看到番石榴的速记 – 它可能不够有用.您可以获得类似的结果: Function<NewK,V> newFn = Functions.compose(Functions.forMap(map),fn); (编辑:日照站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- java 删除文件夹中的所有内容而不删除文件夹本身的实例
- java – JSF的最佳做法是什么?
- 浅谈Java后台对JSON格式的处理操作
- java – CopyOnWriteArrayList throwing CurrentModificati
- java.text.SimpleDateFormat中的奇怪的行为,期望yyyyMMdd给
- Java Boolean包装器类如何实例化?
- java Vector和ArrayList的分析及比较
- java 查询oracle数据库所有表DatabaseMetaData的用法(详解)
- Java创建数组的几种方式总结
- java – 如何找出对象是整数还是isa字符串或isa布尔值?
