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

+ Recent posts