ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java | String Method(2) & Character Method
    JAVA/JAVA 2020. 2. 3. 22:48

    String Method(2) & Character Method


    String Method

    String 클래스 메소드

    메소드 설명
    concat(String str) String 클래스 일반 메소드, String객체명.concat(String str)로 사용
    String 객체와 인자로 전달된 str 문자열을 연결해서 반환
    replace(char oldChar, char newChar) String 클래스 일반 메소드, 객체명.replace(변경 전 문자, 변경 후 문자)로 사용
    문자열 내의 특정 문자를 변경 후 문자로 변경해서 반환
    length() String 클래스 일반 메소드, 객체명.length()로 사용
    문자열의 길이를 반환
    indexOf(String str, int fromIndex) String 클래스 일반 메소드, 객체명.indexOf("찾을 문자열", 시작 인덱스)로 사용
    찾을 문자열에 일치하는 문자열의 인덱스를 반환,
    해당 문자열이 없다면 '-1'을 리턴
    시작 인덱스로 검색을 시작할 문자열 인덱스 설정 가능
    생략시 0(처음)부터 문자열을 검색
    equalsIgnoreCase(String anotherString)

    String 클래스 일반 메소드, 객체명.equalsIgnoreCase(비교 문자열)로 사용
    대소문자를 무시하고 두 문자열을 비교해서 동일하면 true 그렇지 않다면 false 반환

    ※ 대소문자를 따져서 두 문자열을 비교하는 str.equals() 및 str.contentEquals() 메소드는 다음 글 참조

    https://pathas.tistory.com/118


    Character Method

    Character 클래스 메소드

    메소드 설명
    Character.isUpperCase(char ch) Character 클래스 정적 메소드, Character.isUpperCase('문자')로 사용
    인자로 전달된 문자가 대문자인 경우 true반환
    소문자인 경우 false 반환
    Character.isLowerCase(char ch) 사용법은 위의 메소드와 동일함
    인자로 전달된 문자가 소문자인 경우 true반환
    대문자인 경우 false 반환
    Character.toUpperCase(char ch) 인자로 전달된 문자를 대문자로 바꿔서 반환
    Character.toLowerCase(char ch) 인자로 전달된 문자를 소문자로 바꿔서 반환
    Character.isLetter(char ch) 인자로 전달된 문자의 값이 문자라면 true를 반환하고
    그렇지 않다면(ex. 숫자인 경우) false를 반환
    Character.isDigit(char ch)

    인자로 전달된 문자의 값이 숫자라면 true를 반환
    렇지 않다면(ex. 문자, 공백) false 반환

    Character.isWhitespace(char ch)

    인자로 전달된 문자의 값이 ' '공백이라면 true를 반환
    그렇지 않다면 false 반환

     


    사용례

    입력받은 문자열의 대소문자를 바꾼 뒤 출력

    package j200203;
    
    import java.util.Scanner;
    
    public class ConvertText {
    
        public static void main(String[] args) {
    
            // 스캐너 객체 생성
            Scanner sc = new Scanner(System.in);
    
            // 문자열 입력 받기
            System.out.println("문자열을 입력하시오");
            String input = sc.nextLine();
    
            // 입력받은 문자열 각각의 문자가 담길 변수를 임의의 값으로 초기화
            char ch = 'a';
    
            // 결과 문자열 변수 초기화
            String output = "";
    
            // 문자열 각각의 문자에 대해서 대소문자를 변경
            for (int i = 0; i < input.length(); i++) {
                 // 문자열의 i번째 문자를 ch 변수에 저장
                ch = input.charAt(i);
                 // 문자가 소문자인 경우 대문자로 변경
                if (Character.isLowerCase(ch))
                    ch = Character.toUpperCase(ch);
                 // 문자가 대문자인 경우 소문자로 변경
                else if (Character.isUpperCase(ch))
                    ch = Character.toLowerCase(ch);
                 // 결과 문자열에 순서대로 연결
                output = output.concat(String.valueOf(ch));
            }
             // 결과 문자열 출력
            System.out.println(output);
             /*
             문자열을 입력하시오
             Hello, Hi?
             hELLO, hI?
             */
        }
    
    }

    ※ ASCII 코드를 활용해서 문제를 해결할 수도 있음


    스트링 클래스와 캐릭터 클래스에서 자주 사용되는 메소드 몇 가지에 대해 알아보았습니다.

    스트링 클래스의 메소드에 대해서는 이전에도 한 번 정리한 적이 있었는데 너무 길어지는 것 같아서

    나누어서 올리게 되었습니다.

    String 클래스 메소드는 굉장히 많이 사용되기 때문에 자주 사용되는 것은 꼭 알아두는 것이 좋겠습니다.

    Character 클래스 역시 문자를 하나씩 처리해야 하는 상황에서 유용하게 사용할 수 있기 때문에

    기본적인 메소드들에 대해서는 알아두면 좋을 것 같습니다.

    댓글

Designed by Tistory.