2017-02-04 2 views
0

문자열 변수 List이 있습니다. List에있는 문자열의 첫 번째 문자를 가져 오려고합니다. ListcharAt() 함수를 사용할 수 없다는 것이 문제입니다. 여기에 지금까지 내 노력 :문자열에서 문자 가져 오기

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)를 언급하는 것이 도움이 될 수 있습니다. 스택 오버플로가 될 수있는 모든 태그 목록을 검색 할 수 있습니다. – ImportanceOfBeingErnest

답변

4

입력하신 코드는 작동하지 않아야합니다 (오타는 제외). 목록에서 네 번째 항목을 가져옵니다.이 목록은 목록을 문자열 목록으로 정의한 다음 해당 문자열의 첫 번째 문자를 가져 오기 때문에 String임을 압니다. 목록에 4 가지가 없거나 문자열에 문자가 없으면 분명히 중단됩니다.

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

charAt를 호출하기 전에 String을 변수로 선언하면 작업을 조금 더 명확하게 할 수 있습니다. get(String s) 자바에서 배열을 사용할 수 없습니다

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

방금 ​​내가 깨달았 던 목록을 가지고 있다는 것을 깨달았습니다. – CodingProgression

+0

차가움. 나는 나의 대답을 업데이트했다. – leedsunited92

+0

이 오류는 get() 메서드가 String이 아니라 객체를 반환하고 있음을 나타냅니다. 그러나 List 을 사용하는 문자열이 목록에 포함되어 있다고 선언 했으므로이 경우가 아니어야합니다. 빠른 수정을 원할 경우 char 메소드를 호출하기 전에 get 메소드의 결과를 String으로 캐스트 할 수 있습니다. ((String) testList.get (3)). charAt (0). 그러나 제네릭을 올바른 것으로 바꾸는 것이 좋습니다. 사용중인 정확한 코드를 게시 할 수 있습니까? – leedsunited92

0

방법은, 아마도 당신은 자바 컬렉션 프레임 워크 (목록)의 방법과 그것을 혼동. 문자열 배열이있는 경우 먼저 array[i] 으로 요소에 액세스하고 charAt(int index) 메서드를 호출해야합니다. 마지막으로 array[i].charAt(index) 을 사용해야합니다. 여기서 은 검색 문자열에 대한 배열의 위치이고 색인 문자열에서 검색해야하는 문자 색인입니다.

+0

네, 배열과 함께 작동하지만 불행히도 내 질문을 잘못 썼습니다. 실제로 Array의 insted를 사용했습니다. – CodingProgression

+0

@CodingProgression 아 아, 첫 질문에 답장합니다. :/leedsunited92는 이미 문제를 해결합니다;) – Antonio1996

관련 문제