我有一个 CS 课的介绍性作业。我有一个名为 Car 的类和一个单独的数据文件,用于以后的文件重定向。我要:
使用哨兵循环读取每个 Car 对象的品牌、年份和价格,实例化该对象,并将其存储在数组 carArr[] 中。例如,如果您创建一个分配给名为 car1 的变量的汽车对象,您可以这样做: carArr[i] = car1 其中“i”是一个 int 计数器。此外,计算数组的元素,因为它们存储在 int 变量中,如 "i" 或 numCars
到目前为止,这是我的代码:
Scanner scan = new Scanner(System.in);
final int SIZE_ARR = 30;
Car [] carArr = new Car[SIZE_ARR];
int i = 0;
int numcars = 0;
String make = "";
int year = 0;
double price = 0.0;
final String SENT = "EndDatabase";
while (!scan.next().equals(SENT))
{
make = scan.next();
year = scan.nextInt();
price = scan.nextDouble();
Car car1 = new Car(make, year, price);
carArr[i] = car1;
i++;
numCars++;
}
每次通过循环并读入不同名称的新数据时,如何创建一个新的 Car 对象?他们需要有不同的名字吗?照原样,我将制作一堆都命名为 car1 的对象。我最终将不得不打印出数据库,然后在一个新的 Car 对象中读取它们作为搜索键。然后该键将依次搜索 carArr 数组。搜索是否会因为数组中的每个元素都填充了同名对象而感到困惑?
此外,当我搜索数组并将存储的对象与搜索对象进行比较时,我只需要这样做:
key.equals(carArr[i])
这会比较每个对象的实例变量吗?
在我的 Car 类中,我需要为我的 year、make 和 price 实例变量提供一个访问器方法。我需要在哪里使用这些?它还指出我必须有一个“称为 setPrice 的变异器方法”和“一个 equals 方法”。知道它们对我来说意味着什么吗?很抱歉这个和多个问题的长度。我只是想保持领先于我的工作量,而我的老师没有回复电子邮件。谢谢!
**********编辑*************************************** ******* 我想到了。谢谢!