2017-11-16 6 views
-1

私は文字通りのjavaで新しいと一部で苦労していますこんにちはガイズ ので、私は車のレンタルプログラム場合とそうでないなステートメントのjava

public class CarToBuy extends CAR { 
    private int price; 
    private int registration_Year; 
    private int milage; 
    private boolean sold; 

    public CarToBuy(String Description, int cost, int year, int miles) { 
     super(Description); 
     price = cost; 
     registration_Year = year; 
     milage = miles; 
     sold = false; 
    } 

    public int getPrice() { 
     return price; 
    } 

    public int getReg() { 
     return registration_Year; 
    } 

    public int getMilage() { 
     return milage; 
    } 

    public void setNewPrice(int newprice) { 
     price = newprice; 
     if (sold = false) { 
      System.out.println("car not in stock"); 
     } else { 
      System.out.println("The New price is" + newprice); 
     } 
    } 

    public void carBuying(String Customer_name) { 

     if (sold = false) { 
      System.out.println("The Car is not in stock"); 
     } else { 
      System.out.println("Thank you purchasing" + Customer_name); 

     } 
    } 
} 

でも、ユーザーはしかし、新しい価格を設定するためのオプションを設定することとしていますディスプレイに「車が在庫切れ」と表示されたら価格が更新されますが、車に在庫がないと値段が変わらないということです false =価格は変更されません 変更

ありがとうございました

+0

'売却= false'は'売却== false'にする必要があります。 –

+2

またはさらに良い 'if(!sold)' –

+1

@Héctorそれは完全な代替方法です。私は彼の間違いを訂正しようとしています。 –

答えて

1

条件が間違っているようです。 if条件でブール変数を比較する必要はありません。 条件演算子として使用される==ながら

if(!sold){ 
.... 
} 
+0

ありがとう。これは –

1

=は、変数に値を代入演算子とコード

if (sold = false){ 
.... 
} 

下に変更しよう。

So;

if(sold){ 
System.out.println("Thank you purchasing" + Customer_name); 
} else { 
System.out.println("The Car is not in stock") 
} 

が真であり、他のブロックさもなければ販売場合、これは、コードの最初のブロックを実行します。

+0

を働かせてくれました。今理解する –

関連する問題