본문 바로가기
GD's IT Lectures : 기초부터 시리즈/자바(JAVA) 기초부터 ~

[자바(JAVA)] 문자열 처리

by GDNGY 2023. 4. 27.

8. 문자열 처리

자바에서 문자열은 매우 중요한 데이터 타입으로, 문자들의 시퀀스로 구성됩니다. 자바에서 문자열을 처리하기 위해 'String' 클래스를 사용하며, 여러 가지 메소드를 통해 문자열을 조작할 수 있습니다.

 

8.1 String 클래스

자바의 String 클래스는 문자열을 표현하고 관리하는 데 사용되는 기본 클래스입니다. java.lang 패키지에 포함되어 있으며, 다양한 메소드와 기능을 제공합니다. String 클래스의 주요 특징은 불변(immutable)이라는 것입니다. 즉, 한 번 생성된 문자열은 변경할 수 없으며, 문자열을 수정하려면 새로운 문자열 객체를 생성해야 합니다.

 

String 클래스의 주요 메소드
  • length(): 문자열의 길이를 반환합니다.
  • charAt(int index): 지정된 인덱스의 문자를 반환합니다.
  • substring(int beginIndex, int endIndex): 지정된 시작 인덱스와 끝 인덱스 사이의 부분 문자열을 반환합니다.
  • indexOf(String str): 지정된 문자열이 처음으로 나타나는 인덱스를 반환합니다. 없으면 -1을 반환합니다.
  • lastIndexOf(String str): 지정된 문자열이 마지막으로 나타나는 인덱스를 반환합니다. 없으면 -1을 반환합니다.
  • concat(String str): 현재 문자열 뒤에 주어진 문자열을 연결하여 새로운 문자열을 반환합니다.
  • replace(char oldChar, char newChar): 문자열에서 지정된 모든 문자를 새 문자로 바꾼 문자열을 반환합니다.
  • toLowerCase(): 문자열의 모든 대문자를 소문자로 변환한 문자열을 반환합니다.
  • toUpperCase(): 문자열의 모든 소문자를 대문자로 변환한 문자열을 반환합니다.
  • trim(): 문자열의 시작과 끝에서 공백을 제거한 문자열을 반환합니다.

문자열 생성하기

문자열은 큰따옴표("")로 묶인 텍스트로 표현하거나 String 생성자를 사용하여 생성할 수 있습니다.

String str1 = "Hello, World!";
String str2 = new String("Hello, World!");

 

문자열 길이 구하기

'length()' 메소드를 사용하여 문자열의 길이를 구할 수 있습니다.

int length = str1.length(); // str1의 길이를 구합니다.

 

문자열 연결하기

'+' 연산자나 'concat()' 메소드를 사용하여 문자열을 연결할 수 있습니다.

String str3 = "Hello, " + "World!";
String str4 = "Hello, ".concat("World!");

 

문자열 비교하기

'equals()' 메소드나 'compareTo()' 메소드를 사용하여 문자열을 비교할 수 있습니다.

boolean isEqual = str1.equals(str2); // str1과 str2가 같은지 비교합니다.
int comparisonResult = str1.compareTo(str2); // 사전순 비교 결과를 반환합니다.

 

문자열에서 문자 추출하기

'charAt()' 메소드를 사용하여 문자열의 특정 위치의 문자를 추출할 수 있습니다.

char ch = str1.charAt(0); // str1의 첫 번째 문자를 가져옵니다.

 

문자열에서 부분 문자열 추출하기

'substring()' 메소드를 사용하여 문자열의 일부분을 추출할 수 있습니다.

String subStr = str1.substring(0, 5); // str1의 0번째부터 4번째까지의 부분 문자열을 가져옵니다.

 

문자열 찾기

'indexOf()' 메소드나 'lastIndexOf()' 메소드를 사용하여 문자열 내에서 다른 문자열의 위치를 찾을 수 있습니다.

int index = str1.indexOf("World"); // str1에서 "World"가 시작되는 인덱스를 찾습니다.

 

문자열 대체하기

'replace()' 메소드를 사용하여 문자열 내의 특정 문자 또는 문자열을 다른 문자 또는 문자열로 대체할 수 있습니다.

String replaced = str1.replace("World", "Java"); // str1에서 "World"를 "Java"로 대체합니다.

 

문자열 분리하기

'split()' 메소드를 사용하여 문자열을 특정 구분자를 기준으로 분리하여 문자열 배열로 변환할 수 있습니다.

String[] words = str1.split(" "); // 공백을 기준으로 문자열을 분리합니다.

 

문자열의 공백 제거하기

'trim()' 메소드를 사용하여 문자열 양쪽의 공백을 제거할 수 있습니다.

String stringWithSpaces = "  Hello, World!  ";
String trimmed = stringWithSpaces.trim(); // 문자열 양쪽의 공백을 제거합니다.

 

문자열 대소문자 변환하기

'toLowerCase()' 메소드와 'toUpperCase()' 메소드를 사용하여 문자열의 대소문자를 변환할 수 있습니다.

String lowerCase = str1.toLowerCase(); // 문자열의 모든 문자를 소문자로 변환합니다.
String upperCase = str1.toUpperCase(); // 문자열의 모든 문자를 대문자로 변환합니다.

 

이처럼 자바의 'String' 클래스는 문자열 처리에 필요한 다양한 메소드를 제공합니다. 이들 메소드를 활용하여 문자열을 생성하고, 조작하며, 비교할 수 있습니다. 문자열 처리는 프로그래밍에서 매우 중요한 부분이므로, 'String' 클래스의 메소드들에 익숙해지면 자바 프로그래밍에서 다양한 문제를 해결하는 데 도움이 됩니다. 문자열 처리를 이해하고 활용하면 프로그래머로서 더욱 발전할 수 있습니다.

반응형

댓글