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' 클래스의 메소드들에 익숙해지면 자바 프로그래밍에서 다양한 문제를 해결하는 데 도움이 됩니다. 문자열 처리를 이해하고 활용하면 프로그래머로서 더욱 발전할 수 있습니다.
'GD's IT Lectures : 기초부터 시리즈 > 자바(JAVA) 기초부터 ~' 카테고리의 다른 글
[자바(JAVA)] 클래스와 객체 (0) | 2023.04.27 |
---|---|
[자바(JAVA)] 문자열 처리 - StringBuilder와 StringBuffer 클래스 (0) | 2023.04.27 |
[자바(JAVA)] 배열 (0) | 2023.04.27 |
[자바(JAVA)] 조건문과 반복문 (0) | 2023.04.27 |
[자바(JAVA)] 연산자와 수식 (0) | 2023.04.27 |
댓글