java.lang.String 클래스
자바에서는 문자열을 위한 String이라는 클래스를 별도로 제공한다. String 클래스에는 문자열과 관련된 작업을 할 때 유용하게 사용할 수 있는 다양한 메소드가 포함되어 있다. String 인스턴스는 한 번 생성되면 그 값을 읽기만 할 수 있고, 변경할 수는 없다는 단점이 있고 이러한 객체를 자바에서는 불변 객체(immutable object)라고 한다. 즉, 자바에서 덧셈(+) 연산자를 이용하여 문자열 결합을 수행하면, 기존 문자열의 내용이 변경되는 것이 아니라 내용이 합쳐진 새로운 String 인스턴스가 생성되는 것이다.
대표적인 String 메소드 예제
package Lang;
public class StringMethod {
public static void main(String[] args) {
// TODO Auto-generated method stub
String a = "aasfcgdfsdfa";
String b = "def,asdf,asdfs,asdfsd";
System.out.println("a : " + a);
System.out.println("b : " + b);
System.out.println("a.charAt(1)" + a.charAt(1));
// char : charAt()안에 있는 숫자에 해당하는 위치에 있는 a 값이 뭐니?
System.out.println("a.concat(b)" + a.concat(b));
// concat : a 와 b 문자를 더해라
System.out.println("a.indexOf(\"c\")" + a.indexOf("c"));
// indexOf 처음부터 찾아서 ()안의 글자의 위치
System.out.println("a.lastIndexOf(\"a\")" + a.lastIndexOf("a"));
// lastIndexOf : 끝에서부터 찾는서 ()안의 글자 위치는?
System.out.println("a.length()" + a.length());
// length : 글자의 길이
System.out.println("a.replace(\"cg\", \"kkk\")" + a.replace("cg", "kkk"));
// replace : (이거에서, 이걸로) 바꿔라
// replace 한다고 계속 그 값이 바뀌는건 아니고 어딘가 써먹을 때를 위해 대체 해놓는것
System.out.println("a.toUpperCase()" + a.toUpperCase());
// toUpperCase : 대문자로 바꿔라
System.out.println("a.substring(2, 6)" + a.substring(2, 6));
// substring (여기에서, 여기까지 ) 2번부터 6번까지
String[] arr = b.split(","); // 문자열 쪼개기 콤마를 기준으로
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
메소드 | 설명 |
char charAt(int index) | 해당 문자열의 특정 인덱스에 해당하는 문자를 반환함. |
int compareTo(String str) | 해당 문자열을 인수로 전달된 문자열과 사전 편찬 순으로 비교함. |
int compareToIgnoreCase (String str) |
해당 문자열을 인수로 전달된 문자열과 대소문자를 구분하지 않고 사전 편찬 순으로 비교함. |
String concat(String str) | 해당 문자열의 뒤에 인수로 전달된 문자열을 추가한 새로운 문자열을 반환함. |
int indexOf(int ch) int indexOf(String str) |
해당 문자열에서 특정 문자나 문자열이 처음으로 등장하는 위치의 인덱스를 반환함. |
int indexOf (int ch, int fromIndex) int indexOf (String str, int fromIndex) |
해당 문자열에서 특정 문자나 문자열이 전달된 인덱스 이후에 처음으로 등장하는 위치의 인덱스를 반환함. |
int lastIndexOf(int ch) | 해당 문자열에서 특정 문자가 마지막으로 등장하는 위치의 인덱스를 반환함. |
int lastIndexOf (int ch, int fromIndex) |
해당 문자열에서 특정 문자가 전달된 인덱스 이후에 마지막으로 등장하는 위치의 인덱스를 반환함. |
String[] split (String regex) |
해당 문자열을 전달된 정규 표현식(regular expression)에 따라 나눠서 반환함. |
String substring (int beginIndex) |
해당 문자열의 전달된 인덱스부터 끝까지를 새로운 문자열로 반환함. |
String substring (int begin, int end) |
해당 문자열의 전달된 시작 인덱스부터 마지막 인덱스까지를 새로운 문자열로 반환함. |
String toLowerCase() | 해당 문자열의 모든 문자를 소문자로 변환함. |
String toUpperCase() | 해당 문자열의 모든 문자를 대문자로 변환함. |
String trim() | 해당 문자열의 맨 앞과 맨 뒤에 포함된 모든 공백 문자를 제거함. |
length() | 해당 문자열의 길이를 반환함. |
isEmpty() | 해당 문자열의 길이가 0이면 true를 반환하고, 아니면 false를 반환함. |
출처 : tcpschool
'JAVA' 카테고리의 다른 글
[JAVA] lang package - warpper class (0) | 2023.03.04 |
---|---|
[JAVA] lang package - StringBuilder & StringBuffer (0) | 2023.03.04 |
[JAVA] lang package - object (0) | 2023.03.04 |
[JAVA] lang package (0) | 2023.03.04 |
[JAVA] 예외처리 (1) | 2023.03.04 |