У вас есть несколько вопросов, смешанных вместе. В общем, да, str.charAt(str.length() - 1)обычно это последний символ в строке; но подумайте, что произойдет, если str будет пустым или пустым.
Вэнс Мэверик
Работает нормально. Но логика проверки палидрома неверна, пожалуйста, также укажите, какую ошибку вы получаете.
возвращает его в виде строки, а не символа, но вы уже знаете, как это сделать, и мне неясно, что вы ищете.
jcomeau_ictx
8
Что если ваша строка пуста?
датский хан
4
в этом случае возникнет исключение. ты не хочешь этого?
jcomeau_ictx
Вопрос запрашивает символ - это возвращает длинную строку из одного символа. Если использовать charAt()неsubstring()
Эндрю
1
Эндрю, если вы оглянетесь на исходный вопрос до того, как он был отредактирован, вы увидите, что ОП уже пробовал charAt (), и это было не то, что она хотела. Это одна из проблем с вики-подобной средой, такой как SO, вопросы являются движущейся целью, и иногда ответы могут выглядеть глупо.
будьте очень осторожны, если вы хотите выполнить вычисление для числа в строке, так как значения символов сильно отличаются от литерального числа и ваши математические результаты не будут работать.
ДжессиБойд
32
Другие ответы содержат много ненужного текста и кода. Вот два способа получить последний символ строки:
Другие ответы очень полны, и вы обязательно должны их использовать, если вы пытаетесь найти последний символ строки. Но если вы просто пытаетесь использовать условное выражение (например, последний символ «g»), вы также можете сделать следующее:
Я не думаю, что этот код скомпилируется (хотя нужны только небольшие исправления), как только вы его скомпилируете, проведите тест на пустой строке, чтобы увидеть, работает ли он.
Звонит
2
Хотя этот ответ, вероятно, является правильным и полезным, желательно, чтобы вы включили вместе с ним какое-то объяснение, объясняющее, как оно помогает решить проблему. Это становится особенно полезным в будущем, если есть изменение (возможно, не связанное), которое заставляет его перестать работать, и пользователи должны понять, как это когда-то работало. Спасибо!
str.charAt(str.length() - 1)
обычно это последний символ в строке; но подумайте, что произойдет, если str будет пустым или пустым.Ответы:
Код:
Выход из
java Test abcdef
:источник
charAt()
неsubstring()
Вот метод, использующий
String.charAt()
:В результате получается
last char = a
.источник
Другие ответы содержат много ненужного текста и кода. Вот два способа получить последний символ строки:
голец
строка
источник
Другие ответы очень полны, и вы обязательно должны их использовать, если вы пытаетесь найти последний символ строки. Но если вы просто пытаетесь использовать условное выражение (например, последний символ «g»), вы также можете сделать следующее:
или строки
источник
Попробуй это:
источник
Простое решение:
Использование массива символов (обратите внимание на неприятный пустой аргумент String или null String!)
Другое решение использует StringBuilder (который обычно используется для выполнения String, поскольку сама String является неизменяемой.
Еще один подход (больше для обучения, чем для реального использования) заключается в следующем:
Здесь полная строка переворачивается, а затем часть, которая не должна быть обращена, заменяется подстрокой. ;)
источник
источник
источник
Вывод должен быть:
Удачного кодирования!
источник
Вот метод, который я использую, чтобы получить последний xx строки:
Тогда используйте это так:
источник
источник