Так что моя проблема в том, что я хочу запросить ввод для использования сканера, но он просто не распечатывается вообще.И когда он отображает значение для пропущенного сканера, Scanner cheeseType = new Scanner(System.in);
, я получаю нулевое значение.
package classesProject;
import java.util.Scanner;
class Pizza {
String size;
String cheese;
int numToppings;
double price = 0;
}
public class pizzaTime {
public static void main(String[] args) {
Pizza order1 = new Pizza();
double priceOfSize = 0;
double priceOfCheese = 0;
double priceOfToppings = 0;
System.out.println("Pizza size small, medium or large: ");
Scanner sizeAsker = new Scanner(System.in);
order1.size = sizeAsker.nextLine();
if(order1.size == "small") {
priceOfSize = 3.0;
} else if(order1.size == "medium") {
priceOfSize = 5.0;
} else if(order1.size == "large") {
priceOfSize = 7.0;
System.out.println("Cheese type: normal, xtra, or thic: ");
Scanner cheeseType = new Scanner(System.in);
order1.cheese = cheeseType.nextLine();
}if(order1.cheese == "normal") {
priceOfCheese = 0.0;
} else if(order1.cheese == "xtra") {
priceOfCheese = 0.5;
} else if(order1.cheese == "thic") {
priceOfCheese = 1.0;
}
System.out.println("Number of toppings: ");
Scanner toppingAsker = new Scanner(System.in);
order1.numToppings = toppingAsker.nextInt();
priceOfToppings = order1.numToppings * 0.25;
double orderTotalPrice = priceOfSize + priceOfCheese;
System.out.println("Pizza size: " + order1.size + "\n"
+ "Cheese type: " + order1.cheese + "\n"
+ "Number of toppings: " + order1.numToppings + "\n"
+ "Order total: " + orderTotalPrice
);
}
}
Пропускается следующее:
System.out.println("Cheese type: normal, xtra, or thic: ");
Scanner cheeseType = new Scanner(System.in);
order1.cheese = cheeseType.nextLine();
После запуска консоль отображает:
Pizza size small, medium or large:
small
Number of toppings:
2
Pizza size: small
Cheese type: null
Number of toppings: 2
Order total: 0.0
Итак, как вы можете видеть, он прыгает прямо со Сканера размера пиццы на число Сканеров начинки, а не в последовательном порядке.Я понятия не имею, почему или что я должен сделать, чтобы это исправить.