인프런 커뮤니티 질문&답변

코코님의 프로필 이미지
코코

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

4. 단어 뒤집기(StringBuilder이용법 또는 직접뒤집기)

x.length()-1 질문

작성

·

151

0

안녕하세요! 단어 뒤집기에서 x.length()-1 코드중 x의 길이를 사용하는게 이해가 안됩니다. ㅠㅜ

str.length()-1을 사용하는게 아니라 x.length()-1를 사용하는 이유가 뭔가요?

for(String x : str) {
   char[] s = x.toCharArray();
   int lt=0, rt=x.length()-1; 
}

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

for문 안에서 xstr의 각 요소를 차례대로 가리키는 변수입니다. 여기서 str이 String 타입의 배열이거나 컬렉션이라면, xstr 안의 한 문자열을 나타냅니다.

따라서 x.length()-1 코드는 현재 for문에서 다루고 있는 x라는 문자열의 길이에서 1을 뺀 값을 구하는 것이며, 이는 문자열의 인덱스 범위가 0부터 시작하기 때문에 문자열의 마지막 인덱스를 얻기 위해 사용됩니다.

str.length()-1 이라고 했을 경우, str의 길이에서 1을 뺀 값을 얻는 것으로, str 배열이나 컬렉션의 마지막 요소의 인덱스를 나타냅니다. 하지만, 각 문자열 x의 길이를 알아내려면 x.length()를 써야 합니다.

코드에서 ltrt를 이용하여 문자열 x의 앞과 뒤에서부터 문자를 하나씩 비교하거나 교환하기 위해 rtx.length()-1이라는 값을 할당하는 것입니다. 문자열 x의 첫 번째 문자 (left)는 lt, 마지막 문자 (right)는 rt로 접근하여 뒤집기 작업을 수행할 수 있는 것입니다.

만약 질문에 대해 더 자세한 답변을 원하시면 해당 강의의 커뮤니티 질문&답변 게시판을 이용해 질문 주시면 도움을 받으실 수 있습니다.

코코님의 프로필 이미지
코코

작성한 질문수

질문하기