본문 바로가기
Language/Java

String 클래스의 메서드

by 태윤2 2020. 6. 23.
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
String s1 = "java Programming!";
String s2 = "               ITWILL            부산 교육 센터             ";
String s3 = "JAVA/JSP/ANDROID/SPRING";
 
 
// int length() : 문자열의 길이 리턴
System.out.println(s1.length());
=> 17
// boolean equals(String) : 문자열 비교(대소문자 구별하여 비교)
System.out.println(s1.equals("JAVA PROGRAMMING!"));
=> false
// boolean equalsIgnoreCase(String) : 문자열 비교(대소문자 구별없이 비교)
System.out.println(s1.equalsIgnoreCase("java programming!"));
=> true
// charAt(int) : int형 인덱스에 ㅐ당하는 위치의 문자(char) 1개 리턴
String jumin = "921010-1234567";
char checked = jumin.charAt(7);
 
if(checked == '1' || checked == '3'){
    System.out.println(남성!);
}else(checked == '2' || checked == '4'){
    System.out.println(여성!);
}
 
// int indexOf(문자 또는 문자열) : 파라미터로 전달된 문자 또는 문자열의 인덱스를 리턴
// 문자 또는 문자열을 앞쪽 0번 인덱스부터 탐색
// 두번째 파라미터에 인덱스를 지정하면 해당 인덱스부터 탐색 가능 ('a', 2)
System.out.println("두번째 a의 인덱스 : " + s1.indexOf('a'2);
System.out.println("문자 A의 인덱스 : " + s1.indexOf('A')); // 없는 문자는 -1 리턴
System.out.println("문자 A의 인덱스 : " + s1.indexOf("a")); // 첫번째 'a' 인덱스 리턴
System.out.println("문자열 Program의 인덱스 : " + s1.indexOf("Program")); // Program 시작인덱스인 5가 리턴
 
// int lastIndexOf(문자 또는 문자열) : 파라미터로 전달된 문자 또는 문자열의 인덱스를 뒤에서부터 역순으로 탐색
System.out.println("문자 a의 인덱스 : " + s1.lastIndexOf('a'));
 
// substring() : 부문 문자열 추출
// substring(beginIndex) : 시작 인덱스부터 끝까지 추출
System.out.println("5번 인덱스부터 문자열 추출 " + s1.substring(5));
 
//substring(beginIndex, endIndex) : 시작 인덱스부터 끝인덱스까지 추출
System.out.println("5번 부터 11번까지 문자열 추출 : " + s1.substring(512)); // endIndex -1 까지 (미만)
 
// replace(원본문자 또는 문자열, 바꿀문자 또는 문자열) : 문자 또는 문자열 교체(치환)
 
String number = "010-5555-3333";
String centerNum= number.substring(4,number.lastIndexOf("-"));
// String centerNum = number.substring(4, number.length()-5);
centerNum.replace("-" + centerNum + "-""-****-");
 
// toUpperCase() 모든 영문 문자열을 대문자로 변환
// toLowerCase() 모든 영문 문자열을 소문자로 변환
 
// startsWith(String) 특정 문자열로 시작되는지 여부 판별 boolean
// endsWith(String) 특정 문자열로 끝나는지 여부 판별 boolean
 
//contains(String) : 특정 문자열이 포함되는지 여부 판별
System.out.println("문자열 Program 이 포함 되는가?" + s1.contains("Program"));
 
// trim() : 문자열 앞 뒤의 공백 제거(잘라냄) => 문자열 사이 공백은 그대로 유지
System.out.println("공백 제거한 s2 : " + s2.trim());
 
// concat() : 문자열 결합
System.out.println(s1 + s2); // 일반적인 문자열 결합 방법
System.out.println(s1.concat(s2)); // 연결연산자(+)를 사용한 결합보다 연산속도 빠름
// 문자열 결합 연산을 매우 많이 중첩될 경우 연결연산자보다 concat() 연산자 사용
 
// split(String regex) : 문자열 분리 regular expression
// 파라미터에 전달되는 구분자(분리자, Delimeter)를 기준으로 문자열을 분리하여
// 분리된 문자열을 String[] 타입으로 리턴함
// 이 때, 사용되는 구분자(분리자)는 정규표현식을 기초로 하는 문자열 사용
String[] splitResult = s3.split("/");
 
for(String s : splitResult) {
    System.out.println(s);
}
 
 
!!!! String 클래스의 메서드들을 적용하더라도 원본 문자열에는 영향이 없다!
!!!! 메서드를 사용 할때 마다 새로운 주소값에 저장 하기 때문
 
 
 
cs

 

 

'Language > Java' 카테고리의 다른 글

Math 클래스  (0) 2020.06.23
StringBuffer & StringBuffer 클래스  (0) 2020.06.23
String 클래스  (0) 2020.06.23
Wrapper 클래스  (0) 2020.06.21
List 인터페이스-자료구현(Collection Framework)  (0) 2020.06.18