JAVA

[subString()]문자열 마지막 문자 제거하는 방법

jojelly 2022. 6. 21. 14:51
반응형

단어 사이에 & 또는 / 등의 구분자를 넣어 String으로 보내야 하는 경우가 있다.

예를 들어,

      에어팟,아이폰,아이패드,맥북 을 

=> 에어팟&아이폰&아이패드&맥북 형태로 만들어 주려고 한다.

 

1
2
3
4
5
6
7
8
9
10
StringBuilder stringbuilder = new StringBuilder();
ArratList list = [에어팟,아이폰,아이패트,맥북]
for (String str : list)
{
    stringbuilder.append(str);
    stringbuilder.append("&");
}
target = stringbuilder.toString();
 
//결과 : 에어팟&아이폰&아이패트&맥북&
cs

이런 경우 마지막 맥북 뒤에도 &가 붙어 버린다. 

이러한 경우에 사용할 수 있는 방법이 subString() 이다.

 

 

subString함수는 두가지가 있다.

1. 인자값을 하나만 받는 함수

2. 인자값을 두개 받는 함수

 

1번의 인자값은 int형으로 index로 맨 앞(0)에서 부터 시작하여 해당위치 까지 이동 하여  해당 index포함 그 이후의 문자열을 리턴시키는 함수이다.

ex)

1
2
3
4
5
6
7
8
String str = 0123456;
str.subString(4);
//=>456
 
//공백도 index에 포함된다.
String study = 스터디 합시다.
study.subString(5);
//=>시다.
cs

2번은 두개의 인자값을 가지는 방법이다. 

첫번째 인자값은 위와 같이  문자열의 시작부분을 지정한다. 

두번째 인자값은 문자열의 끝 부분을 지정하는 것으로 시작과 끝을 지정한다는 차이가 있다. 

때문에 에어팟&아이폰&아이패드&맥북&의 끌을 잘라주면 되니 문자열의 길이-1을 두번째 인자값으로 넣어주면 된다

 

코드 확인

1
2
3
4
5
6
7
8
9
10
11
public class Main
{
    public static void main(String[] args)
    {
        String str = "에어팟&아이폰&아이패드&맥북&";
        str = str.substring(0, str.length() - 1);
        System.out.println(str);
        // 에어팟&아이폰&아이패트&맥북
    }
 
}
cs

 

반응형

'JAVA' 카테고리의 다른 글

[올림차순] [내림차순] 배열 정렬  (0) 2022.06.23
[split()]자바 특정 문자열 기준으로 자르기  (3) 2022.06.22
배열 안 객체에 값 추가/삭제 하기  (0) 2022.05.24
==와 equals차이  (0) 2022.03.08
Springboot실행과정  (0) 2022.02.26