【发布时间】:2016-05-02 14:34:03
【问题描述】:
当我在 main 中创建这个 hashMap 并填写它时,一切正常
HashMap<String, Furgoneta> mapper = new HashMap<>();
LocalDate f1 = LocalDate.of(2013, Month.JANUARY, 1);
LocalDate f2 = LocalDate.of(2016, Month.FEBRUARY, 10);
Furgoneta furgo1 = new Furgoneta("0001AAA", "Seat", "Ibiza", false, f1, f2, 3100);
//FILLING HASHMAP
mapper.put(furgo1.getMatricula(), furgo1);
System.out.println(mapper.toString());
当我尝试在类而不是 main 中编写相同的代码时,put 将不起作用(无法填充 hashmap)
//FILLING HASHMAP
mapper.put(furgo1.getMatricula(), furgo1);
System.out.println(mapper.toString());
object furgoneta(指面包车)
public class Furgoneta extends VehiculoAlquiler implements Serializable
{
private int mma;
//constructor
public Furgoneta(String matricula, String marca, String modelo, boolean alquilado,
LocalDate fechaI, LocalDate fechaF,int mma ) {
super(matricula, marca, modelo, alquilado, fechaI, fechaF);
this.mma = mma;
}
public int getMma() {
return mma;
}
如果我写这个 main 它可以工作
HashMap<String, Furgoneta> furgonetas = new HashMap<>();
LocalDate f1 = LocalDate.of(2013, Month.JANUARY, 1);
LocalDate f2 = LocalDate.of(2016, Month.FEBRUARY, 10);
Furgoneta furgo1 = new Furgoneta("0001AAA", "Seat", "Ibiza", false, f1, f2, 3100);
//Las introducimos en la HashMap
furgonetas.put(furgo1.getMatricula(), furgo1);
System.out.println(furgonetas.toString());
furgo1.importeAlquiler(f1, f2);
但我想做完全相同的事情,但 hashMap 在一个不在 main 中的类中
我无法填写我创建的哈希图。如果 hashmap 在 main 我可以填充它但是如果我尝试在一个类而不是 main 中编写 hashmap 并填充它,当我尝试填充它时它会说“包映射器不存在”和“包当 mapper 是 hashmap 名称而 furgo1 是一个对象时,furgo1 不会退出”
我看不到我的错误,我真的很感激一些帮助,我被困在这里几个小时了。对不起,如果我是第一次问的话会让人感到困惑
【问题讨论】:
-
您能详细说明一下,“无法填写”是什么意思,您也可以发一个mcve吗?
-
发布您的课程代码
-
我猜你没有正确地构建或设置你的类@Bea。但是你真的需要解释更多出了什么问题。您正在经历的错误消息/控制流程。 Java lives outside of classes 中没有任何内容,所以说“这在类中不起作用”也有点用词不当,仅供参考
-
你需要清除你的java基础知识..如果你想这样做,那么它可以在类内的静态块内完成
-
公共类 Furgoneta 扩展 VehiculoAlquiler 实现 Serializable { private int mma; //构造函数 public Furgoneta(String matricula, String marca, String modelo, boolean alquilado, LocalDate fechaI, LocalDate fechaF,int mma ) { super(matricula, marca, modelo, alquilado, fechaI, fechaF);这个.mma = mma; } public int getMma() { return mma; }