我应该创建一个将在循环上创建的对象数组,但出于某种原因,我无法向数组中添加内容。
我有这个
public class _10Weather {
List<Weather> daysoff = new ArrayList<Weather>();
}
当我这样做时
daysoff.add
它说无法解决添加问题。我一直在阅读很多关于arraylists的问题以及关于如何添加的问题,但它似乎应该就是这样。
编辑:那些是进口,我一直在尝试很多东西。
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
答案 0 :(得分:0)
写作时
daysoff.add
然后你要求编译器查找名为add
的字段;数据成员。 java.util.List类没有名为add
的字段,因此它报告它无法解决此问题。
你应该致电
daysoff.add(someInstance);
其中someInstance
是Weather
的实例。
然后,编译器将识别您正在调用名为add
的方法。
当您执行此操作时,您已经定义了someInstance
。添加实例与创建实例是分开的。
假设Weather
的构造函数采用字符串参数。你会得到这样的东西:
Weather someInstance = new Weather("sunny");
daysoff.add(someInstance);
在第一行中,您已经创建了实例。在第二个,你正在使用它。
在这种情况下,确保您拥有正确的List类型也很重要; Java AWT还有一个名为List的类,它与java.util.List不同。人们要求您告诉我们您的导入的原因是,他们可以看到您是否意外使用java.awt.List
代替java.util.List
。