【问题标题】:Add an object to an Array of a custom class [duplicate]将对象添加到自定义类的数组 [重复]
【发布时间】:2012-05-11 03:18:30
【问题描述】:

我是 Java 的初学者,我正在尝试创建一个自定义类的数组。 假设我有一个名为 car 的类,我想创建一个名为 Garage 的汽车数组。如何将每辆车添加到车库?这就是我所拥有的:

car redCar = new Car("Red");
car Garage [] = new Car [100];
Garage[0] = redCar;

【问题讨论】:

  • 命名约定:变量以小写字母开头,对象以大写字母开头:Car redCar = ...Car[] garage = ...garage[0]

标签: java arrays


【解决方案1】:

如果要使用数组,则必须保留一个包含车库中汽车数量的计数器。最好使用ArrayList 而不是数组:

List<Car> garage = new ArrayList<Car>();
garage.add(redCar);

【讨论】:

  • 我怎样才能在车库里找到一辆特定的汽车?比如如何添加第一辆车?
  • +1 用于列表建议:)。下一步将是实现equals()hashCode() 并使用Set&lt;Car&gt;(因为完全相同的汽车在车库中两次可能没有多大意义:)。
  • @Dangerosking - 使用garage.get(0)
  • “我怎样才能在车库里找到一辆特定的汽车?” docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
  • 可以在抽象类中使用arraylist吗?就像数组一样,我可以创建它,但我不能向它添加对象。
【解决方案2】:

数组声明应该是:

Car[] garage = new Car[100];

你也可以直接赋值:

garage[1] = new Car("Blue");

【讨论】:

    【解决方案3】:

    如果您想创建一个车库并装满新的汽车,以便以后访问,请使用以下代码:

    for (int i = 0; i < garage.length; i++)
         garage[i] = new Car("argument");
    

    此外,汽车稍后可通过以下方式访问:

    garage[0];
    garage[1];
    garage[2];
    etc.
    

    【讨论】:

      猜你喜欢
      • 2020-12-28
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 2013-01-03
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      相关资源
      最近更新 更多