gpt4 book ai didi

java - 如何从我的 carList 中获取总价?

转载 作者:行者123 更新时间:2023-12-01 10:17:12 25 4
gpt4 key购买 nike

我正在创建一个名为 Car 的类,其方法名为 TotalPrice,该方法将采用 Car 数组并计算总价格列表。我实现了一个客户端方法 totalPrice,它接受汽车列表 (ArrayUnsortedList carList) 并返回一个等于列表中汽车总成本的整数。

我一直在编写测试驱动程序,以便可以测试我的实际 Car 类程序。

这是我的 Car 类的代码:

public class Car
{
int year;
String make;
String model;
int price;

public Car(int year, String make, String model, int price) {
this.year = year;
this.make = make;
this.model = model;
this.price = price;
}

public int getYear() {
return this.year;
}

public String getMake() {
return make;
}

public String getModel() {
return model;
}

public int getPrice() {
return this.price;
}

public static int totalPrice(ArrayUnsortedList carList) {
int totalPrice = 0;
for(int i=carList.size(); i>0; i--)
{

totalPrice += ((Car)carList.getNext()).getPrice();
}
return totalPrice;
}
}

这是我的试驾类(class):

import java.util.Scanner;
import java.util.ArrayList;

public class CarList{

public static void main (String [] args) {

ArrayUnsortedList<Car> carList = new ArrayUnsortedList<Car>();
Car car1, car2;

car1 = new Car(2016, "BMW", "M4", 65700);
carList.add(car1);
car1 = new Car(2016, "Mercedes-Benz", "C300", 38950);
carList.add(car1);
car2 = new Car(2016, "Lexus", "GS F", 84440);
carList.add(car2);

System.out.println(Car.totalPrice(carList));

}

}

更新********

我必须使用给定的 ArrayUnsortedList。

以下是其余代码:GITHUB

更新现在我得到的总价格错误了?

65700 + 38950 + 84440 = 189090

但是我得到了253320???

 ----jGRASP exec: java CarList

253320

----jGRASP: operation complete.

最佳答案

对于totalPrice函数本身的代码,我将使用ArrayUnsortedList.size()ArrayUnsortedList.getNext()来浏览列出内容。这个列表 api 很糟糕(我想是故意的),你在这里遇到一些困难是可以理解的。学习快速浏览 Java 类,仅查看函数头来确定哪个函数有用。

int totalPrice = 0;
for(int i=carList.size(); i>0; i--)
{
totalPrice += carList.getNext().getPrice();
}
return totalPrice;

你会注意到我没有在循环内引用i;这是因为 ArrayUnsortedList 没有需要索引的方法。因此,我仅依靠 i 来确保对 ArrayUnsortedList.getNext() 进行足够数量的调用。

关于其他主题,

  • 我不认为 Car 类的工作是对汽车的价格进行求和。 totalPrice 在我看来应该作为 ArrayUnsortedList 上的函数实现,或者简单地按原样在测试类中执行。

  • 我认为Java环境中的测试应该使用JUnit来运行。这可能是您很快就会遇到的主题,但如果您已经使用过 JUnit,那么您的测试运行程序应该使用它。

关于java - 如何从我的 carList 中获取总价?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35824740/

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