gpt4 book ai didi

java - 按坐标索引对象列表的最惯用方法是什么

转载 作者:太空宇宙 更新时间:2023-11-03 19:27:52 25 4
gpt4 key购买 nike

我有很强的Python背景,而且对Java完全是新手,所以我尝试用Java以Pythonic方式做事,但最终陷入困境。目前我有一个问题要弄清楚如何存储按坐标索引的对象,以便它们是可迭代的。我可以创建对象的二维数组,但恐怕这会占用大量内存并且我每次都必须迭代所有索引(当我只想偶尔这样做时)获取所有对象。

在Python中,我会使用以元组为键的字典,但看起来这样的事情在Java中是不可能的。

例如

class bar()
pass

bar1 = bar()
bar2 = bar()
# etc

foo = { (0,1): bar1, (100,30): bar2 }

for x in foo.values():
do_something()

最佳答案

  1. 不要犹豫内存(不是现在,也许以后)

  2. Java 等价的“类”是 Map。如Map是一个暂时采用 HashMap 类的接口(interface)。

  3. Map有一个方法values()来获取 map 的所有值。

  4. 由于您的 key 不是标量,您可以创建自己的坐标类。请注意覆盖 equals() and hashCode() .

关于java - 按坐标索引对象列表的最惯用方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7402260/

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