3

我需要创建我的温度类的 3 个实例。我可以通过键入三遍来做到这一点,但我确信这不是一个好方法。因此,我在网上搜索并找到了 ArrayList。

我不明白如何使用 ArrayList 所以它可以在循环中创建类的实例,我想在我的循环之外访问它。

例如现在我有

Temperature t1 = new Temperature ();
t1.setDegrees(input.nextDouble());

我如何循环上面的整个内容,所以我不必输入三遍。我在网上搜索了示例,但我只能找到已经存储在 ArrayList 中的值,而不是创建新实例并将其存储在 ArrayList 中。所以基本上这就是我想要做的

Temperature t1 = new Temperature ()
for ( 3 loops ) 
{

t1.setDegrees(user input) ;
ArrayList ( << this is the part i need help on. How do i store the temperature here so i can access it outside the scope of the for loop) 
}
4

6 回答 6

2
List<Temperature> temperatures = new ArrayList<Temperature>();
for (int i = 0; i < 3; ++i) {
    Temperature t = new Temperature();
    t.setDegrees(user input) ;
    temperatures.add(t);
}
于 2012-11-12T22:41:04.297 回答
1

您正在寻找ArrayList.add()方法和for 循环

List<Temprature> list = new ArrayList<Temprature>();
for (int i = 0; i < 3; i++) { 
   Temprature t = new Temprature();
   t.setDegrees(input.nextDouble());
   list.add(t);
}

稍后要获取可以使用的元素ArrayList.get(),如果需要迭代所有对象,可以使用for-each 循环

于 2012-11-12T22:39:58.383 回答
1
    List<Temparature> templist = new ArrayList<>();
    for(int i=0; i<3; i++){
     Temparature t = new Temparature();
     t.setDegrees(input.nextDouble());
    tempList.add(t);
    }

上面的代码将在一个循环中创建 3 个Temparature对象,并在每次迭代中添加它们。

检查ArrayList API的方法。

于 2012-11-12T22:40:12.810 回答
1
List<Temperature> temperatures = new ArrayList<Temperature>();
for (int i = 0; i < 3; ++i) {
    Temperature t = new Temperature();
    t.setDegrees(userInput);
    temperatures.add(t);
}
// here you go
于 2012-11-12T22:40:46.847 回答
0
List<Temperature> temps= new ArrayList<Temperature>();

for (int i=0;i<3;i++){
    Temperature t = new Temperature ()
    t.setDegrees(user input) ;
    temps.add(t)
}
System.out.println(temps);
于 2012-11-12T22:41:36.180 回答
0

拥有一个 ArrayList 甚至一个温度数组不会比仅仅声明 3 个温度在内存/速度方面更好。

而且,根据您要执行的操作,您最好单独声明它们,以便您可以按名称引用它们。

Temperature fahrenheit = new Temperature();
Temperature celsius = new Temperature();

通过这种方式,您可以按名称访问它们,而如果它们在数组中,则必须记住哪个在数组中的哪个位置。

也就是说,这只有在您事先知道需要多少温度时才有效。如果你不知道你需要多少,那就是你需要使用数组或列表的时候。

于 2012-11-12T22:52:53.733 回答