Мой код:
import java.util.Scanner;
public class oClass {
public static void main(String[] args) {
Scanner fx = new Scanner(System.in);
System.out.println("Введите свой земной вес");
float Earth = fx.nextFloat();
float Loon = (float) (Earth * 0.17);
System.out.println("Ваш вес на луне составляет " + Loon + "кг. Приятного полёта!");
}
}
Когда я ввожу целое число, то всё работает хорошо. Но когда я ввожу десятичное число(float), у меня появляется ошибка
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextFloat(Scanner.java:2345)
at com.company.oClass.main(oClass.java:7)
Почему это происходит, ведь я указал тип переменной и тип вводимого числа float.
Либо используйте тот символ разделителя целой и дробной части, который принят в вашей стране (для России это запятая), либо явно указывайте локаль:
Scanner scanner = new Scanner(System.in).useLocale(Locale.ENGLISH);
Как меняется крипторынок и к чему готовиться владельцам криптообменников
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Всем привет! Подскажите плиз! Пытаюсь разобрать один паттерн, пример использования Android Architecture Components, написанный на Koltin'e и столкнулся с синтаксисом,...
Есть задача: из зашифрованнх данных с помощью алгоритма шифрования (AES например) сгенерирован QR-кодНужно создать Android-приложение для считывания...