Безопасный и локальный анализ номеров -деликатно

Java NumberFormatявляется 1 )непоточным -безопасным (, который можно обойти с помощьюThreadLocal); 2)неудобно правильно использовать для простейшего случая использования, когда я знаю, должна ли строка содержать int, long или double, и мне нужен такой API, как:

int parseInt(String str, Locale locale) throws ParseException; 
int parseInt(String str, int defaultValue, Locale locale);
long parseLong(String str, Locale locale) throws ParseException;
long parseLong(String str, long defaultValue, Locale locale);
double parseDouble(String str, Locale locale) throws ParseException;
double parseDouble(String str, double defaultValue, Locale locale);

где исключение выдается, когда строка не полностью проанализирована. Очевидно, такую ​​обертку легко написать, но я не смог найти ее ни в Guava, ни в Apache Commons Lang. Я просто пропустил это? Или есть другое более -или -менее стандартное решение для этого?

7
задан Alexey Romanov 21 July 2012 в 13:19
поделиться