Problema rápido con respecto a la declaración "si"
Este pequeño método que hice aquí no está devolviendo un valor de costo correcto. Me pregunto si estoy usando la instrucción if incorrectamente. Como soy nuevo en Java, esta es la primera vez que tengo que usar una sentencia if con una cadena involucrada. No tengo libro ni profesor, solo estoy aprendiendo por mi cuenta. Cualquier ayuda sería muy apreciada.
EDITAR: código entero publicado
import java.util. *;
clase pública UseCarRental {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Thank you for choosing ICT car Rentals\n"
+ "Pleae enter your full name:");
String renterName = input.nextLine();
System.out.println("Please enter your zip code:");
int renterZipcode = input.nextInt();
input.nextLine();
System.out.println("Please enter the size car you would like:\n"
+ "economy\n"
+ "midsize\n"
+ "fullsize\n"
+ "luxury?");
String carSize = input.next();
System.out.println("How many days do you wish to rent this?");
int rentalDays = input.nextInt();
if (carSize.equals("luxury")) {
System.out.println("Will you be wanting a chauffer (y or n");
String chauffer = input.next();
LuxuryCarRental rentIt = new LuxuryCarRental(renterName,
renterZipcode, carSize, rentalDays,chauffer);
rentIt.display();
} else {
CarRental rentIt = new CarRental(renterName, renterZipcode,
carSize, rentalDays);
rentIt.display();
}
} // end main method
} // clase final UseCarRental
clase CarRental {
private int days;
private int zip;
private double cost;
private String size;
private double total;
private String name;
CarRental(String renterName, int renterZipcode, String carSize, int rentalDays){
this.days = rentalDays;
this.zip = renterZipcode;
this.name = renterName;
this.size = carSize;
}
double getCost(){
if(size.equals("economy")){
cost = 29.99;
}
if(size.equals("midsize")){
cost = 38.99;
}
if(size.equals("fullsize")){
cost = 43.50;
}
return cost;
}
void display(){
System.out.println("Thank you for using our service.");
System.out.println("Your order is as follows:");
System.out.println("Name: " + name);
System.out.println("Zip code: " + zip);
System.out.println("Car size: " + size);
System.out.println("Cost per day: " + cost);
System.out.println("Days requested: " + days);
total = days * cost;
System.out.println("Total cost: " + total);
System.out.println("If any of the above information is incorrect, too bad bud, because it isn't.");
}
}
clase LuxuryCarRental extiende CarRental {
private int chauffer = 200;
private int days;
private int zip;
private double cost;
private String size;
private double total;
private String name;
LuxuryCarRental(String renterName, int renterZipcode, String carSize, int rentalDays, String chauffer){
super(renterName, renterZipcode, carSize, rentalDays);
this.days = rentalDays;
this.zip = renterZipcode;
this.name = renterName;
this.size = carSize;
}
@Override
void display(){
System.out.println("Thank you for using our service.");
System.out.println("Your order is as follows:");
System.out.println("Name: " + name);
System.out.println("Zip code: " + zip);
System.out.println("Car size: Luxury");
System.out.println("Cost per day: " + cost);
System.out.println("Days requested: " + days);
System.out.println("Chauffer cost: " + chauffer);
total = days * cost + chauffer;
System.out.println("Total cost: " + total);
System.out.println("If any of the above information is incorrect, too bad bud, because it isn't.");
}
}