static boolean itsNumber(String s ){
if (s.length() == 0) return false;
char[] cha = s.toCharArray();
boolean flag = false;//если больше одной точки то тру
for(int i =0; i < cha.length;i++)
{
char c = cha[i];
//если символ "-" не первый или символ является не числовым ... и дальше пытаюсь обработать наличие точки, но не могу
if((i!=0 && c == '-') || (!Character.isDigit(c)) || flag && (c=='.' && (i==0||i==cha.length))) return false;
if((c=='.' && (i==0||i==cha.length))) flag = true;//ставлю флаг true, если уже точка поймана одна, и она не первый и не последний символ.
}
return true;
}
Обработка точки не работает правильно, голову сломал. Не могу понять как написать надо. Мне нужно чтобы double обработал как число, а программа из-за точки пишет, что это стринг. Помогите обработать корректно double.
public static boolean itsNumber(String s) {
try {
Double.parseDouble(s);
} catch (NumberFormatException e) {
return false;
}
return true;
}
можно регуляркой проверить еще
static boolean itsNumber(String s ){
return s.matches("\\d+\\.\\d+") || s.matches("\\d+")
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как мне изменить текст путем нажатия кнопки?
Гуглил, пытался методом тыка, читал, искал, но так и не смог найти, как убрать отступ от SelectBoxТ
Дело в том что у меня есть плеер и над ним должна идти бегущая строкаПерепробовал все возможные варианты