gpt4 book ai didi

collections - 从 Xtend 中的对集合创建不可变映射

转载 作者:行者123 更新时间:2023-12-04 16:11:08 26 4
gpt4 key购买 nike

我有一个对象集合 O,我想从中创建两个特征(例如,O.nameO.值).

到目前为止我最好的解决方案是

newHashMap(o.map[it.name -> it.value])

但这将实例化并初始化一个新的 HashMap,这实际上不是我想要的。相反,我想要一个没有不必要实例化的不可变映射,类似地

o.toInvertedMap[value]

返回 - 但是这会将 O 映射到 O.value

Xtend库中有没有实现我想要的方法?

注意:要为我上面的一般问题添加一些上下文,我实际上想要为我的 EMF EObject 获取属性名称和值的映射:

newHashMap(eObject.eClass.EAttributes.map[it.name -> eObject.eGet(it).toString])

编辑:

我刚找到这个:

newImmutableMap(o.map[it.name -> it.value])

这看起来更像我想要的。这是“最佳”的编写方式吗?

最佳答案

目前我找到的最好方法是(如上面的更新):

newImmutableMap(o.map[name->value])

关于collections - 从 Xtend 中的对集合创建不可变映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41144172/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com