String 관련 메소드
1
2
3
4
5
6
str.contains("값");
: 문자열에 값이 포함되어 있는지 확인하는 메서드. true / false 반환
String str = "Java Programming";
System.out.println(str.contains("Java")); -> true
System.out.println(str.contains("java")); -> false
1
2
3
4
5
6
7
String str;
// 소문자 -> 대문자
str.toUpperCase();
// 대문자 -> 소문자
str.toLowerCase();
1
2
3
4
5
문자열.repeat(숫자);
: 문자열을 숫자만큼 반복하여 늘린다
String str = "abc";
String newStr = str.repeat(3); -> "abcabcabc"
1
2
3
4
5
6
7
String[] String배열명 = String명.split("input");
: 문자열을 input의 기준에 따라 구분짓고 문자열배열의 값으로 대입
String str = "ab!c!def";
String[] strArr = str.split("!"); -> strArr = {"ab", "c", "def"}
String str = "abcd";
String[] strArr = str.split(""); -> strArr = {"a", "b", "c", "d"}
1
2
3
4
5
6
문자열.replace(문자1, 문자2)
: 문자1을 문자2로 바꾼다. 문자2에 ""를 넣으면 삭제가능.
String str = "abbccc";
str = str.replace("bb", " ") -> str = "a ccc"
str = str.replace(" ", "") -> str = "accc"
1
2
3
4
5
char[] 배열명 = 문자열.toCharArray()
: String -> char[]
str = "abcd"
char[] ch = str.toCharArray() -> ch = {'a', 'b', 'c', 'd'}
1
2
3
4
5
String str = new String(배열명)
: char[] -> String
char[] ch = {'a', 'b', 'c', 'd'};
String str = new String(ch) -> str = "abcd"
1
2
3
4
5
String명.charAt(인덱스)
: 문자열의 인덱스번호 값 출력(0부터시작)
str = "abcde"; // 01234가 각 알파벳 인덱스 번호
str.charAt(2) -> 'c'
1
2
3
4
5
문자열.length()
: 문자 길이 반환, 배열명.length : 배열의 길이 반환
String str1 = "abc"; / String[] str2 = {"abc", "def", "ghi", "jkl"};
str1.length() -> 3 / str2.length -> 4
1
2
3
4
5
문자열.substring(num1, num2)
: 문자열의 num1부터 num2-1에 해당하는 문자 반환
str = "abcdefgh";
str.substring(1, 4); -> "bcd"
1
2
3
4
5
6
7
8
9
10
11
str1.indexOf(str2, int beginIndex)
: 문자열 str1에서 문자열 str2와 일치하는 것을 찾는 메소드
일치하면 시작점의 인덱스번호를 일치하는 문자열이 없으면 -1을 반환하는 메소드.
position은 검색을 시작할 위치이며 기본값은 0 이다.
String str1 = "Hello World";
String str2 = "orl";
String str3 = "abc";
int res1 = str1.indexOf(str2); -> 7
int res2 = str1.indexOf(str3); -> -1
1
2
3
str.trim();
: 문자열의 좌,우의 공백을 제거해준다. 비어있는 개행도 제거해준다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
객체.compareTo(비교객체)
: 두 개의 값을 비교하여 int 값으로 반환해준다.
경우1) 숫자의 비교
크다(1), 같다(0), 작다(-1) 의 결과 리턴
Integer a = 3;
Integer b = 4;
Double c = 1.0;
a.compareTo(b); -> -1
a.compareTo(3); -> 0
a.compareTo(2); -> 1
c.compareTo(2.7); -> -1
만약 int형을 비교하기를 원한다면
Integer.compare(a,b); 로 한다
경우2) 문자열 비교
같다(0), 그 외 양수/음수 반환
String str = "abcd";
// 비교 대상에 문자열이 포함된 경우
str.compareTo("abcd"); -> 0
str.compareTo("ab"); -> 2 // 비교값이 포함되어 있으면 두 문자열의 길이의 차를 반환
str.compareTo("a"); -> 3
"".compareTo(str); -> -4
str.compareTo("c"); -> -2 // 위치의 문자열을 비교하므로, str의 0번 자리인 a와 c를 비교하여
// 아스키 코드의 차이를 반환 (a=97, c=99)
str.compareTo("abfd"); -> -3 // 문자열이 다르기 때문에 비교하여 다른 곳을 찾는다
// ab는 같고, c와 f가 다르다 (c=99, f=102)
// 비교 대상이 다른 경우
str.compareTo("zbcd"); -> -25 // a=97, z=122
str.compareTo("ABCD"); -> 32 // 대소문자를 구분한다. (a=97, A=65)