Я пытаюсь использовать оператор switch, чтобы рассчитать, сколько пациент обязан своей страховкой, но по какой-то причине он всегда взимает с них цену по умолчанию 45 $. Если они не используют ни один из трех вариантов, их цена составляет 45 $, но даже если я скажу, что использую US Insurance или Mountain Health, она говорит, что цена составляет 45 $. Любая идея, почему она не работает?Оператор переключения Java, идущий прямо по умолчанию
Кроме того, существует ли способ игнорировать, использует ли пользователь заглавные буквы или нет, чтобы получить тот же результат, если они набрали «СТРАХОВАНИЕ США», «НАШЕ страхование» или «Страхование США»?
int charge;
Scanner kb = new Scanner(System.in);
System.out.print("What is the name of your insurance? ");
Insurance = kb.nextLine();
switch (Insurance) {
case "Mountain Health":
charge= 30;
break;
case "US Insurance":
charge= 40;
break;
case "Blue Insurance":
charge= 45;
break;
default:
price = 45;
}
System.out.println("Your charge is " + charge + "$.");
Что тип страхования, не могли бы вы показать, где вы объявляете его – jstuartmilne
@Sudakatux Это 'String', в противном случае ОП получает компиляцию ошибка. – Maroun
Да, заметив сразу после попадания. : P – jstuartmilne