我正在尝试将一些Python代码转换为Java,我遇到的障碍之一是使用namedtuple。 Java 似乎不使用元组,所以我想知道我可以使用什么作为替代方案。
#part of the python code:
@staticmethod
def stream_file(fieldnames, id):
tuple = namedtuple("RECORD", " ".join(fieldnames))
...
data = [x for x in arr]
yield tuple._make(data)
最佳答案
您可以使用 Map
。有不同的实现,都有不同的优点。
HashMap
提供基于哈希键的映射,这是 Java 中所有对象固有的。TreeMap
如果您想通过可比较的值(如字符串)定义身份,则更好。
map 可以按类型,但不能按值。我相信,您正在寻找的是TreeMap<String, Object>
,这将允许您从字符串(标识符或 id)映射到对象。然而,对象的类型大多是匿名的,您可能需要大量 instanceof
。不过这似乎满足您的要求。
关于java - Java 中的 NamedTuple 替代方案是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55572918/