У меня возникли проблемы с использованием моих заявлений if
и else if
для моего личного проекта.Как правильно использовать инструкции if и else?
Моя программа работает нормально в первых строках при запросе пользователя для ввода, но в коде есть проблема. Мой компилятор просит меня использовать метод переключения.
Я также столкнулся с проблемой, когда компилятор говорит мне, что я не могу преобразовать String
в double
, что я уже нашел, используя поиск.
Я знаю, что это может быть очень много, но я бы очень признателен вам за вашу помощь.
/**
* This application executes number of gallons purchased, car wash if the
* customer desires.
* There will be four options, Regular, Premium, Super,
* or None. A car wash is $1.25 if purchased with $10.00 or more. If it is
* anything equal or below $9.99 then the car wash fee is $3.00.
* Regular per gallon is $2.89
* Premium per gallon is $3.09
* Super per gallon is $3.39
*
*
* @author Christian Guerra
*/
package finalflight;
//The line below is preparing the system to ask the user for inputs
import java.util.Scanner;
public class ExxonCarServices {
public static void main(String[] args) {
String gasType;
String carWash;
String gasPrice;
String numGallons;
double gasRegular = 2.89;
double gasPremium = 3.09;
double gasSuper = 3.39;
double gasNone = 0;
Scanner keyboard = new Scanner(System.in);
System.out.print("Hello which type of gas would you like today? "
+ "Please make the selection Regular, Premium, Super, or None" + " ");
gasType = keyboard.nextLine();
System.out.print("How many gallons would you like?" + " ");
numGallons = keyboard.nextLine();
System.out.print("Would you like to add a professional car wash cleaning today?"
+ " " + "Please select Yes or No" + " ");
carWash = keyboard.nextLine();
if (gasType.equals("Regular")) {
gasRegular = Regular;
} else if (gasType.equals ("Premium")) {
gasPremium = Premium;
} else if (gasType.equals("Super")) {
gasSuper = Super;
} else {
gasNone = 0;
}
if (numGallons * gasPrice <10) {
carWash = 3;
} else {
carWash = 1.25;
}
}
}
Пожалуйста, пост [ясный и краткий, минимальный пример] (http://stackoverflow.com/help/how-to-ask) из проблема, с которой вы сталкиваетесь. Кроме того, отправьте ** точную ** ошибку, которую вы получаете. Я никогда не слышал о компиляторе, рассказывающем вам, какие конструкции использовать. – Qix
Ваше использование if ... then ... else в порядке. Проблема в том, что у вас есть gasRegular, определяемый как double, но затем вы пытаетесь установить gasRegular = Regular, который, как я предполагаю, является некоторой константой String (вы не включили часть своего кода, где вы определяете «Обычный», Премиум "и" Супер ", если я так не пропустил его. Покажите нам код, где эти значения установлены. – MarsAtomic