java.lang.String 클래스
문자열을 사용할 때 주로 사용하는 클래스입니다.
String Class의 선언 방법
참고
본래는 클래스를 불러오는 것이기 때문에 인스턴스를 생성하여 불러와야 하지만,
ex) String str1 = new String("Hello");
String str1 = "Hello"; 와 같이 선언을 하는 것이 가능하다! (자주 사용하기 때문에)
예시
import java.util.*;
public class MainClass {
public static void main(String[] args) {
String str;
str = "Hello";
System.out.println(str);
String str1 = new String("Hello"); // == String str1 = "Hello";
str1 = "hi";
String str2 = "반갑습니다";
System.out.println(str1);
실행화면
Hello
hi
concat : 문자열 연결
참고
concat이란 메서드가 있긴 하지만 + 만으로도 연결이 가능하기에 잘 사용하지 않습니다.
예시
String str3 = str.concat(str2);
System.out.println(str3);
String str4 = str+str2;
System.out.println(str4);
실행화면
Hello반갑습니다
Hello반갑습니다
equals : 비교
참고
==으로 비교시는 false이기 때문에 "다른 문자열입니다"란 문구가 실행될 것입니다.
이는 ==은 초창기 값으로 비교를 하기 때문입니다.
그래서 문자열 비교시 equals를 사용합니다.
예시
String str4 = "world";
String str5 = "worl";
str5 = str5 + "d";
// if(str4 == str5) { // == 초창기 값으로 비교
if(str4.equals(str5) == true) { // == true 생략가능
System.out.println("같은 문자열입니다");
}else {
System.out.println("다른 문자열입니다");
}
indexOf, lastIndexOf : 문자의 위치 탐색
참고
indexOf : 앞부분의 해당 문자열 위치를 탐색
lastIndexOf : 뒷부분의 해당 문자열 위치를 탐색
예시
String str6 = "abcdabcdabcd";
// 01234
int index = str6.indexOf('c');
System.out.println("index : "+ index);
int lastIndex = str6.lastIndexOf('c');
System.out.println("lastIndex : "+ lastIndex);
실행화면
index : 2
lastIndex : 10
length() : 문자열의 길이
예시
int len = str6.length();
System.out.println("length : "+ len);
replace : 수정
예시
String str7 = "A*B*C*D";
String rep = str7.replace("*", "-");
System.out.println("replace : "+ rep);
실행화면
replace : A-B-C-D
split : 문자열을 원하는 구분자(token)로 분리
참고
지정한 구분자로 문자열을 나눠 배열에 저장합니다.(공백 문자열 포함)
예시
/*
aaaa-bbb-cc '-' == token(여러가지가 있는데 안되는 것도 있다.)
aaaa
bbb
cc
1001-홍길동-24-서울시
1001
홍길동
24
서울시
*/
String str8 = "1001-홍길동-24-서울시";
String split[] = str8.split("-");
System.out.println(split.length);
// 배열 내용 출력 메소드 Arrays.toString(배열명)
// import 필수! (import java.util.Arrays)
System.out.println(Arrays.toString(split));
// foreach문 사용
for ( String s : split) {
System.out.println(s);
}
실행화면
4
[1001, 홍길동, 24, 서울시]
1001
홍길동
24
서울시
substring : 문자열 잘라내기
참고
사용시 주의할 사항은 str9.substring(0, 4) 일 경우 잘라내어 지는 문자열은 (index, index-1)이라는 점을 숙지하여야 한다.
예시
String str9 = "abcdefghij";
String str10 = str9.substring(0, 4); // 0 ~ 3
System.out.println("str10 : "+ str10);
str10 = str9.substring(5); // 5 ~ 끝까지
System.out.println("str10 : "+ str10);
실행화면
str10 : abcd
str10 : fghij
toUpperCase : 대문자로 변환 , toLowerCase : 소문자로 변환
예시
String str11 = "abcDEF";
System.out.println(str11.toUpperCase()); // 대문자
System.out.println(str11.toLowerCase()); // 소문자
실행화면
ABCDEF
abcdef
trim : 문자열의 앞뒤공백을 삭제
예시
String str12 = " java java java ";
System.out.println(str12.trim());
실행화면
java java java
charAt : index를 입력하면 그 위치에 문자를 돌려주는 함수
참고
문자열인지 숫자인지 확인할 경우 많이 사용되는 메서드이다.
예시
String str13 = "가나다라마바사";
char c = str13.charAt(3);
System.out.println("c = "+ c);
실행화면
c = 라
contains - 문자열 탐색(있느냐? 없느냐?)
예시
String str14 = "서울시 마포구 서교동";
boolean b = str14.contains("마포");
System.out.println(b);
}
}
실행화면
true
'IT > Java' 카테고리의 다른 글
[자바] File Class (0) | 2021.05.16 |
---|---|
[자바] Calendar Class (0) | 2021.05.13 |
[자바] Java 예약어(keyword, reserved word) (0) | 2021.04.24 |
[자바] beginning (2) | 2021.04.23 |
[자바] MultiThread (0) | 2021.04.22 |