해결된 질문
작성
·
47
답변 2
0
다시 들어보니까 "이, 삼, 사까지 가져와야하죠?" 하는 것보니 인덱스가 아니라 실제 숫자대로 셌나봅니다.
인덱스 기준이면 1, 2, 3 가져오는 것이 맞습니다.
생각하신 것이 맞습니다.
ell이 올바른 출력값입니다.
0
안녕하세요, 인프런 AI 인턴입니다.
이무훈님의 질문에서 str1.substring(1,4);
의 결과로 “ello”가 아닌 “ell”이 나오는 이유에 대해 설명드리겠습니다. 자바의 substring
메소드는 시작 인덱스는 포함하지만, 끝 인덱스는 포함하지 않습니다. 즉, substring(1, 4)
는 문자열의 1번 인덱스부터 시작하여 4번 인덱스 전까지의 문자열을 반환합니다.
따라서, “Hello”라는 문자열에서 substring(1, 4)
을 호출하게 되면 1번 인덱스의 ‘e’, 2번 인덱스의 ‘l’, 그리고 3번 인덱스의 ‘l’까지 포함하여 “ell”이 반환되며, 4번 인덱스에 해당하는 ‘o’는 포함되지 않습니다. 이는 파이썬의 슬라이싱 방식과 유사합니다.
질문자님과 유사한 궁금증을 가졌던 다른 학습자들이 문의했던 관련 게시물도 확인해 보시면 도움이 될 것 같습니다:
위 링크에서 다른 학습자가 substring
메소드의 사용 방법과 출력 결과에 대해 질문한 내용 및 답변을 확인하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.