본문 바로가기
Java/Java

[Java]문자열 함수 substr(), substring(), slice()

by 전재경 2022. 11. 20.

 

substr(a,b) : a 는 시작값, B는 길이

 

a번째 부터 b 길이만 잘라내서 표시

 

Substring(a, b) : a는 시작값, b는 종료값

 

a 번째부터 b번째 전까지 잘라내서 표시

 

※substr() 에서는 b 번째가 아닌 b 길이 만큼까지 잘라내므로 차이가 있다.

 

slice(a, b) : a는 시작값, b는 종료값

 

a번째 부터 b번째 전까지 잘라내서 표시

 

 

substring 사용법

String substring(int startIndex);
String substring(int startIndex, int endIndex);

startIndex는 시작지점의 인덱스 값이고, endIndex는 종료 지점의 인덱스 값이다.

두 방식 모두 return 값으로 문자열(String)이 리턴된다.

 

사용 예제

public class Main {

    public static void main(String args[]) {
        String example = "야식으로 어떤것을 먹을지 몰라요";
        System.out.println("example.length->" + example.length());

        System.out.println(example.substring(5));
        System.out.println(example.substring(5,8));
    }
}
example.length->17
어떤것을 먹을지 몰라요
어떤것

example은 전체 문자열의 크기가 17개의 문자로 되어 있다.

index는 시작이 0으로 시작되기 때문에 띄어쓰기도 포함해서 각각 하나의 index값을 가지고 있다.

 

 

Error

 

substring에서 발생하는 에러는 StringIndexOutofBoundsException이 주로 발생하며,

범위를 벗어난 값을 호출할 때 발생을 한다.

즉, substring을 사용할 때에는 인덱스 값을 명시하지 말고, 값을 체크해서 사용하는 버릇이 중요하다.

'Java > Java' 카테고리의 다른 글

[Java] 정규표현식(Regular Expression)  (0) 2022.11.20
[Java] 람다식 (Lambda Expressions)  (0) 2022.11.20
[Java] 삼항 연산자  (0) 2022.11.20
[Java]StringBuilder 란 ?  (0) 2022.11.20
[Java] Stream이란 ?  (0) 2022.11.20

댓글