문자열에서 마지막 문자를 지우고싶은데 어떻게하나요?


public String method(String str) {
    if (str.charAt(str.length()-1)=='x'){
        str = str.replace(str.substring(str.length()-1), "");
        return str;
    } else{
        return str;
    }
}

문자열에서 마지막 문자를 지우려고 이렇게 했는데요. 이렇게하니까 문자열의 마지막 문자랑 같은 중간 문자도 같이 없어져요.

예를들어서 admirer라는 문자열이있고 메소드를 돌리면 admire가아니라 admie가 나와요. 어떻게하면될까요?

  • 2016년 01월 29일에 작성됨

조회수 372


1 답변


좋아요
0
싫어요
채택취소하기

replace메소드는 해당 문자를 다 바꿔버립니다. 그래서 substring()을 쓰는게 좋을겁니다.

public String method(String str) {
    if (str.length() > 0 && str.charAt(str.length()-1)=='x') {
      str = str.substring(0, str.length()-1);
    }
    return str;
}
  • 2016년 01월 29일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close