gpt4 book ai didi

java - 无法在其他方法中检索 HashMap 输入

转载 作者:行者123 更新时间:2023-12-02 08:20:40 25 4
gpt4 key购买 nike

我遇到一个小问题,我无法解决。

我有一个父类(super class)(SetupFunctions),我在 HashMap 中使用了它 -->

public HashMap<Integer, SetupFunctions> map =  new HashMap<Integer, SetupFunctions>();

所有其他类都扩展了该SetupFunction。我需要执行 160 种方法来检索唯一数据,并且需要将这些数据存储在一个地方以便稍后检查(这是一项自动化测试)。这就是为什么我在 HashMap 中使用 SetupFuncition 类型。

因此,我使用构造函数实例化一个类,然后将其添加到 HashMap 中:

MyClass m = new MyClass (car1, var2, var3, var4, var5);
map.put(getCenarioID(), m);

用同样的方法,我添加了一些 sysout 只是为了看看发生了什么:

System.out.println(map.containsKey(1));
System.out.println(map.size());

正如预期的那样,它打印 True 和 1...但是当我离开此方法(方法执行结束)并返回到 main 方法时,相同的 sysout 打印 False 和 0。

我想知道为什么我的 HashMap 为空或重置...这不会发生...我说得对吗?

最佳答案

使用所提供的信息很难判断到底发生了什么。但看来您可能正在使用两个不同的名为 MapHashMap,一个在方法内部,另一个在方法外部。

我认为您有两个(可能更多)名为 Map 的变量 - 一个是您的类的成员,而另一个是您的驱动程序类的元素(即您的 main 方法所在的类)声明)或 main 方法本身内部的变量。

关于java - 无法在其他方法中检索 HashMap 输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5524562/

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