Я хочу проверить, имеет ли длина введенных строк от 3 до 8 символов. Раньше я использовал if condition
, и он работал. Однако, когда я ввел некоторую подстроку из строки, один из if statements
не работает. Может кто-нибудь помочь мне понять, почему. Благодарю.Android - Проверьте длину строки
Мои коды является
Рабочий код:
text = et.getText().toString();
l = text.length();
a = text.substring(0, 1);
if (l >=9) tv.setText("Invalid length!!! Please check your code");
if (l <= 2) tv.setText("Invalid length! Please check your code");
И вот, второй if statement doesnt
работы.
text = et.getText().toString();
l = text.length();
a = text.substring(0, 1);
c = text.substring(1, 2);
d = text.substring(3, 4);
e = text.substring(4);
if (l >=9) tv.setText("Invalid length!!! Please check your code");
if (l <= 2) tv.setText("Invalid length! Please check your code");
Спасибо. Оно работает. Я не понимаю, что я пытаюсь проверить длину исходной строки и как это влияет на подстроки. Извините за задание слишком много вопросов. Я новичок в программировании на Java/Android. – AUJ
@AUJ - Если исходная строка слишком короткая, то некоторые вызовы подстроки могут вызывать исключение. Например, если строка «Привет», то попытка выполнить 'c = text.substring (1,2)' будет пытаться получить доступ к 3-му символу, который не существует. Вот почему вам нужно избегать этих вызовов, когда проверка длины указывает на проблему. –
Большое спасибо Теду. Это сэкономило мне много времени. Я боролся с этим часами :( – AUJ