2017-02-04 6 views
0

У меня есть переменная String с именем List. Я хочу получить первый символ строки, который находится в List. Проблема в том, что я не могу использовать функцию charAt() на List. Вот мои усилия до сих пор:Получение символа из строки

List<String> testList = new ArrayList<>(); 

testList.get(3).chatAt(0);

+0

В начале можно было бы указать язык программирования, который вы используете, и [tag] (http://meta.stackexchange.com/questions/119695/how-can-i-add-tags-and-where -can-i-find-a-list-of-all-tags-on-stack-overflow) вопрос с ним. – ImportanceOfBeingErnest

ответ

4

Код, который вы указали, должен работать (кроме опечатки). Он извлекает 4-й элемент в списке, который, как мы знаем, является строкой, потому что определил список как список строк, а затем получает первый символ этой строки. Он, очевидно, сломается, если в списке не будет 4 вещи, или если в строке нет символов.

List<String> testList = new ArrayList<>(); 
testList.get(3).charAt(0); 

Вы можете сделать вещи немного яснее, объявив строку как переменную, прежде чем вы вызовете charAt на ней.

String s = testList.get(3); 
char c = s.charAt(0); 
+0

Я только что понял, что у меня есть список ... извините, я испортил это. – CodingProgression

+0

Прохладный. Я обновил свой ответ. – leedsunited92

+0

Ошибка указывает на то, что метод get() возвращает объект, а не строку. Однако это не должно быть так, как вы заявили, что ваш список содержит строки с использованием списка . Если вы хотите быстро исправить, то вы можете передать вывод метода get в String перед вызовом charAt на нем: ((String) testList.get (3)). CharAt (0). Но я предлагаю вам попробовать вместо этого получить дженерики. Можете ли вы разместить точный код, который вы используете? – leedsunited92

0

Методы get(String s) не доступен для массивов в Java, вероятно, вы путать его с методами Java Collection Framework (список). Если у вас есть массив строк, вы должны сначала получить доступ к элементу с помощью array[i] и после вызова метода charAt(int index). Наконец, вы должны использовать array[i].charAt(index) где я это положение в массиве на строку, поиск и индекс индекс символа вы должны искать в строке.

+0

Да, что работает с массивами, но, к сожалению, я написал свой вопрос неправильно. Я на самом деле использовал List Insted of Array. – CodingProgression

+0

@CodingProgression ah ok, я отвечаю на ваш первый вопрос. :/leedsunited92 уже решает вашу проблему;) – Antonio1996