String - char를 여러개 붙여놓은 효과를 주기 때문에 String 클래스의 해당 index 값은 다음과 같다.
즉, String = char의 배열이라고 생각해도 될 것 같다.
String : A B C D E F G
index : 0 1 2 3 4 5 6
substring - 사용법
// 사용법
String.substring(start) // 문자열 start 위치부터 끝까지 문자열 자르기
String.substring(start, end) // 문자열 start 위치부터 end전까지 문자열 발췌
// EX
String str = "ABCDEFG"
// A=0, B=1, C=2, D=3, E=4, F=5, G=6 의 index를 가짐
str.substring(3); // 결과값 = DEFG
str.substring(3, 6); // 결과값 = DEF
활용예제
// 1. 마지막 3글자 자르기
String str = "ABCDEFG";
String result = str.substring(str.length() - 3, str.length());
System.out.println(result);
// 결과값 = EFG
// 2. 특정문자 이후의 문자열 제거
String str = "ABCD/EFGH";
String result = str.substring(str.lastIndexof("/") + 1);
System.out.println(result);
// 결과값 = DEFGH
// 3. 특정단어(부분)만 자르기
String str = "바나나 : 1000원, 사과 : 2000원, 배 : 3000원";
String target = "사과";
int target_num = str.indexOf(target);
String result = str.substring(target_num, (str.substring(target_num).indexOf("원") + target_num_;
System.out.println(result + "원");
// 결과값 : 사과 : 2000원
split
- 특정문자를 기준으로 문자열을 잘라서 배열에 넣어주는 split
- 일부러 DB에 +# 이렇게 문장 끝에 특수기호를 넣은 후 나중에 DB에서 값을 꺼낼때는 #으로 split하여 사용하는 등
활용도가 아주 높은 함수
split 사용법
// 사용법
문자열배열 = 대상문자열.split("기준문자");
// EX
String str = "";
for (int i = 0; i < 5; i++) {
str += i + "#";
}
String[] array = str.split("#");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
//결과값
// array[0] = 1
// array[1] = 2
// array[2] = 3
// array[3] = 4
활용예제
// 1. 쉼표로 문자열 잘라서 배열에 넣기
String str = "A,B,C,D";
String[] array = str.split(",");
// 출력
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
// 결과값
// array[0] = A
// array[1] = B
// array[2] = C
// array[3] = D
// 2. 공백 (" ")으로 문자열 잘라서 배열에 넣기
String str = "동해물과 백두산이 마르고 닳도록 하나님이 보우하사 우리나라 만세";
String[] array = str.split(" ");
//출력
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
// 결과값
// array[0] = 동해물과
// array[1] = 백두산이
// array[2] = 마르고
// array[3] = 닳도록
// array[4] = 하나님이
// array[5] = 보우하사
// array[6] = 우리나라
// array[7] = 만세
728x90
'ssung_끄적끄적 > JAVA_끄적' 카테고리의 다른 글
배열의 오름차순, 내림차순 (0) | 2023.08.18 |
---|---|
특수문자 출력하기 ( 괄호, 백슬래시, 따옴표 등등) (0) | 2023.07.28 |
소수 구하기 (0) | 2023.07.26 |
replace와 replaceAll (0) | 2023.06.21 |