2012-02-05 10 views
1

Я работаю над программой на Java, и у меня возникла небольшая проблема. Я принимаю ввод пользователя, который включает число, но я не знаю, как это число представлено (например, это могут быть «42», «42.0», «42.00001» и т. Д.). Если я использую, скажем, Float.parseFloat, он не будет принимать целые строки («42»), а если я использую Integer.parseInteger, он не будет принимать поплавковые строки («42.0»). Существует ли какая-либо обобщенная функция преобразования строк в число в Java?Обобщенное преобразование строки в строку в Java

Заранее спасибо.

+1

Убедитесь, что вы не получаете никаких посторонних символов в ваш вход в parseFloat. –

ответ

2

Вы можете использовать Float.parseFloat

groovy> Float.parseFloat("4") 
4.0 
+0

Побей меня. Float.parseFloat уверен, что номера синтаксического анализа не имеют десятичного или экспоненциального компонента. – chucksmash

+0

Нечетный, я использовал 'Float.parseFloat' раньше, и он не работал. Позвольте мне заглянуть в нее, прежде чем отметить вас как правильно. – taktoa

+2

И проклинай свой скорейший панихида, сэр. – chucksmash

0
public class Q9146065 { 
    public static void main(String[] args) { 
     String test = "32"; 
     float a = Float.parseFloat(test); 
     float b = 10; 
     System.out.println(a + b); 
    } 
} 

достаточно Конечно распечатывает 42,0 для меня, так это разборе 32 штраф ...

Смежные вопросы