Почему мы должны использовать index! = -1 для сравнения алфавитов indexOf в java

Я не могу понять, почему мы должны использовать idx! = -1 в выражении if

вот мой код друга

public static String encrypt(String input, int key)
        {
            String alphabet="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
            String shifted =alphabet.substring(key)+alphabet.substring(0,key);
            StringBuilder encrypted=new StringBuilder(input);
            for(int i=0; i<encrypted.length();i++)
            {
                char current=encrypted.charAt(i);
                int idx=alphabet.indexOf(current);
                if(idx !=-1) {
                    char newchar = shifted.charAt(idx);
                    encrypted.setCharAt(i, newchar);

                }

            }
            return encrypted.toString();


        }

пожалуйста, помогите мне Спасибо.

-7
источник поделиться
2 ответа

Строка int idx=alphabet.indexOf(current); вернет действительный индекс 0 ~ 25, если его алфавит, если его не является алфавитным символом, тогда он вернет -1, как не найденный.

+2
источник

public int indexOf (String str) - это функция из класса String.
str - поисковая строка, которую вы ищете, и возвращает местоположение (индекс), где оно найдено.

Если не найден, он вернет -1

По мере того как вы сделали что-то сделать, если вы не нашли нужного вам персонажа, вам нужно сравнить возвращаемое значение с -1.

+1
источник

Посмотрите другие вопросы по меткам или Задайте вопрос