java - 如何设置对象的 boolean 状态

标签 java

我正在做一项作业,我必须为一家出租车公司制作一个程序。到目前为止我写的确实有效。这是...

import java.util.ArrayList;
import java.util.Iterator;

public class TaxiCo
{
    private ArrayList<Taxi> taxiCollection;

    public TaxiCo()
    {
        taxiCollection = new ArrayList<>();
    }


    public void addTaxi(Taxi blackCab)
    {
        taxiCollection.add(blackCab); 
    }


    public int getNumberOfTaxis()
    {
        return taxiCollection.size();
    }

    public int getNumberOfTaxis(int area)
    {
        int Taxi= 0;
        for (Taxi blackCab : taxiCollection) {
            if(blackCab.getArea() == (area)) {
                Taxi++;
            }
        }
        return Taxi;
    }

    public void list()
    {
        System.out.println("Taxi Information");
        for(Taxi blackCab : taxiCollection)
        {
            System.out.println(blackCab.getDetails());
        }
        System.out.println();  
    }

    public boolean removeTaxi(int id)
    {
      Iterator<Taxi> it = taxiCollection.iterator();
      while(it.hasNext()) {
          Taxi blackCab = it.next();
          int taxiIdentification = blackCab.getID();
          if(taxiIdentification == id) {
              it.remove();
              return true;
            }
        }
      return false;
    }

现在,下一个任务是创建一个方法,允许我输入出租车的 ID 并更改其状态。要么免费,要么使用。我想它会是这样的,但不知道如何进行 boolean 运算。例如,如果我输入列表中已设置为空闲的出租车 ID,我可以输入占用,这将更改出租车的状态。

Iterator<Taxi> it = taxiCollection.iterator();
while(it.hasNext()) {
     Taxi blackCab = it.next();
     int taxiIdentification = blackCab.getID();
     if(taxiIdentification == id) {
     }
}

请你帮我解决这个问题。

最佳答案

  • 创建一个名为 status 的 ENUM,其中包含字段FREE、OCCUPIED
  • 向出租车添加字段状态
  • 将此方法添加到 TaxiCo

    public void changeStatus(int id, Status status){
      for(Taxi taxi : taxiCollection) {
         if(taxi.getID() == id){
           taxi.setStatus(status);
         }
      }
    }
    

关于java - 如何设置对象的 boolean 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47434177/

相关文章:

java - 如何在 Android 中进行搜索

java - 不带年份的 DateTimeFormat 短日期

java - 为什么 DocumentBuilder Parse 在 Eclipse 中可以正常工作,但在 IntelliJ IDEA 中却不行?

java - 将 HTML 表单数据发送到 Java

java - 从字符串中获取特定子字符串

java - 如何在 Maven 项目中打包资源?

java - 迭代大量集合时出现 Mongodb 游标问题

java - 使用 Project Lombok 安全吗?

java - 为什么我不能使用 "instanceof"作为 Int 和 Integer 的比较数组?

java - Java 中使用 Jersey 和 Moxi 出现 NoClassDef 异常