Как проверить есть ли в конкретном индексе строки символ? JAVA
public class Output {
public static void output(int N, String I){
for(int i = 0; i == I.length(); i++){
if(I[i].equals("")){
}
}
}}
нужно проверить является ли символ I пробелом
Ответы (2 шт):
Автор решения: Алексей Шиманский
→ Ссылка
if (Character.isWhitespace(I.charAt(i)))
System.out.println("yes");
else
System.out.println("no");
Вместо isWhitespace можно использовать isSpaceChar если нужно знать что это именно пробел, а не табуляция или перевод строки
Автор решения: Nowhere Man
→ Ссылка
У вас цикл не выполнится ни разу, так как он должен работать, пока i равно длине строки, начиная от 0: для непустой строки это условие не выполнится никогда, а для пустой строки попытка прочитать символ по индексу 0 при помощи метода String::charAt приведёт к StringIndexOutOfBoundsException или при чтении из пустого массива символов I.toCharArray()[i] будет выброшено ArrayIndexOutOfBoundsException.
public static void output(int N, String I) {
for (int i = 0, n = I.length(); i < n; i++) {
if (' ' == I.charAt(i)) {
// найден пробел по индексу i
}
}
}
или так:
public static void output(int N, String I) {
int i = -1;
for (сhar c : I.toCharArray()) {
i++;
if (' ' == c) {
// найден пробел по индексу i
}
}
}