Эта программа должна подсчитывать количество цифр в числе.
Вот мой код:Ошибка в Java при попытке чтения ввода
import java.util.Scanner;
public class Converter {
public static void main(String[] args) {
Scanner marty = new Scanner(System.in);
float sk;
System.out.println("Enter start number: ");
sk = marty.nextFloat();
int numb = (int)Math.log10(sk)+1;
System.out.println(numb);
marty.close();
}
}
Я получаю такого рода ошибки, в то время как на вход пытаюсь число с 4 или более цифр до запятой, как 11111,456:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextFloat(Unknown Source)
at Converter.main(Converter.java:11)
Любые идеи о в чем проблема?
Вероятно, вам нужен '.', а не', 'как десятичный разделитель. – njzk2
Вы должны прочитать http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#nextFloat() – StackFlowed
Спасибо за все ответы! Это сработало, я обязательно прочитаю этот документ. – Martin