1

誰でも私を助けることができますか?方法 で 2 台 の 車 が 速い か 比較 し たいisFaster(Car otherCar). オブジェクトがメソッドの引数であるオブジェクトとどのようにCar比較されるかを誰かが理解するのを手伝ってくれますか? メソッドの本体を作成するにはどうすればよいですか。otherCarisFaster

public class Car {
  private String make ="";
  private int year = 0;
  private int maxSpeed = 0;

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

  public void setSpeed(int maxSpeed){
    this.maxSpeed = maxSpeed;
  }

  public void setMake(String make){
    this.make = make;
  }

  public void setYear(int year){
    this.year = year;
  }

  public int getMaxSpeed(){
    return maxSpeed;
  }

  public int getYear(){
    return year;
  }

  public String getMake(){
    return make;
  }

  public String toString(double param){
    String temp = String.valueOf(param);
    return temp;
  }

  public String toString(int param){
    String temp = String.valueOf(param);
    return temp;
  }

  public String toString(char param){
    String temp = String.valueOf(param);
    return temp;
  }
}
4

4 に答える 4

3

Car オブジェクトには、いくつかの属性が必要です。たとえば、

class Car{

    int gear;
    double speed;
}

比較する必要がある場合は、比較する決定的な属性を決定する必要があります。

その速さなら

// isFaster will only return true if the calling car object is faster 
// than the otherCar

// for your class this should work

isFaster(Car otherCar){       
    return this.getMaxSpeed() - otherCar.getMaxSpeed()  ;
}

// If you use double for speed, and you need precision
// you can set some tolerance value for comparisons.

isFaster(Car otherCar){       
    return (this.getMaxSpeed() - otherCar.getMaxSpeed() ) < TOLERANCE ;
}

お役に立てれば。

于 2013-09-11T16:45:36.863 に答える
3

Carクラスに などのメソッドがあると仮定すると、次double getMaxSpeed ()のように実装できます。isFaster (Car otherCar)

boolean isFaster (Car otherCar) {
    return this.getMaxSpeed() > otherCar.getMaxSpeed ();
}
于 2013-09-11T16:46:23.820 に答える
0

このようなメソッドを作成します

public boolean isFaster(Car anotherCar){
   return this.maxSpeed > anotherCar.maxSpeed;
}

クライアント コードの例:

public static void main(String args []){
  Car car1 = new Car();
  car1.setSpeed(200);// should be setMaxSpeed();
  Car car2 = new Car();
  car2.setSpeed(250);

  System.out.println(car1.isFaster(car2));// prints false

}
于 2013-09-11T16:52:37.883 に答える