본문으로 바로가기
반응형

찾고자 하는 내용을  'ctrl + f' 를 눌러 찾으시길 바랍니다.

 

ex) ctrl + f  ->  "문자열을 정수로" 입력 후 엔터

 

 

 

 

● String 클래스

 

 

 

 

 

 

▶ .equals : 문자열 같은지 확인

String str = "동일 문자열 확인";
boolean res = str.equals("동일 문자열 확인");
System.out.println(res);

 

결과:

 

 


 

 

▶ .charAt : 문자열에서 일부 문자 추출

str = "문자열에서 일부 문자문 추출";
char resChar = str.charAt(2);
System.out.println(resChar

 

결과:

 

 


 

 

▶ .length : 문자열 길이 구하기

str = "문자열의 길이를 구함";
int resInt = str.length();
System.out.println(resInt);

 

결과:

 


 

 

▶ .concat : 문자열 붙이기

str = "문자열과 문자열 붙이기";
String resStr= str.concat("이 문자열이 붙었습니다.");
System.out.println(resStr);

 

결과:

 


 

 

▶ .compareTo : 문자열 사전 순 비교

str = "문자열 사전순 비교";
resInt = str.compareTo("가나다");
System.out.println(resInt);
resInt = str.compareTo("아자차");
System.out.println(resInt);

 

결과:

 


 

 

▶ .replace : 문자열에서 특정 문자열을 변경

str = "문자열에서 특정 문자열을 변경";
resStr= str.replace("특정", "일부");
System.out.println(resStr);

 

결과:

 


 

 

▶ .split : 문자열 분리

str = "문자열에서 특정 구분자를 기준으로 문자열 분리";
String[] resStrArr= str.split(" ");
System.out.println(Arrays.toString(resStrArr));
str = "010-1234-5678";
resStrArr = str.split("-");
System.out.println(Arrays.toString(resStrArr));
str = "username@sample.com";
resStrArr = str.split("@");
System.out.println(Arrays.toString(resStrArr));

 

결과:

 


 

 

▶ .join : 분리된 문자열을 다시 결합

str = "분리된 문자열을 특정 구분자를 기준으로 다시 결합";
resStrArr = str.split(" ");
resStr = str.join("\t", resStrArr);
System.out.println(resStr);
str = "010-1234-5678";
resStrArr = str.split("-");
resStr = str.join("-", resStrArr);
System.out.println(resStr);

 

결과:

 


 

 

▶ .trim : 문자열 공백 제거

str = "     불필요한 앞/뒤 공백을 제거      ";
resStr = str.trim();
System.out.println(resStr);
str = "\t\t불필요한 앞/뒤 공백을 제거\t\t";
resStr = str.trim();
System.out.println(resStr);

 

결과:

 


 

 

▶ .substring : 문자열에서 일부 문자열만 분리

str = "문자열에서 일부 문자열만 분리";
resStr = str.substring(2);
System.out.println(resStr);
resStr = str.substring(0, 5);
System.out.println(resStr);

 

결과:

 


 

 

▶ .indexOf : 문자열에서 지정한 문자열의 위치 찾기

str = "문자열에서 지정한 문자열의 위치 찾기";
resInt = str.indexOf("위치");
System.out.println(resInt + "에 " + str.substring(resInt, resInt+2) + 
		"가 있습니다.");
resInt = str.indexOf("문자열");
System.out.println(resInt);
// 이전에 찾은 위치 다음 인덱스 부터 다시 찾기
resInt = str.indexOf("문자열", resInt + 1);
System.out.println(resInt);
str = "이 문자열에는 다양한 문자들이 포함되어 있는 문자열 입니다.";
resInt = str.indexOf("문자");
System.out.println(resInt);
resInt = str.indexOf("문자", resInt + 1);
System.out.println(resInt);
resInt = str.indexOf("문자", resInt + 1);
System.out.println(resInt);
resInt = str.indexOf("문자", resInt + 1);
System.out.println(resInt);

 

결과:

 


 

 

▶ .toUpperCase / .toLowerCase : 문자열을 대문자/소문자로 변경

str = "영문자를 대문자/소문자로 변경한다. abCdEF";
resStr = str.toUpperCase();
System.out.println(resStr);
resStr = str.toLowerCase();
System.out.println(resStr);

 

결과:

 

 

 


 

 

▶ .format : 문자열 포맷

		str = "영문자를 대문자/소문자로 변경한다. abCdEF";
		resStr = str.toUpperCase();
		System.out.println(resStr);
		resStr = str.toLowerCase();
		System.out.println(resStr);
	
		str = "정수 포맷 : %d";
		resStr = String.format(str, 10);
		System.out.println(resStr);
		
		str = "실수 포맷 : %.2f";
		resStr = String.format(str, 10.123);
		System.out.println(resStr);
		
		str = "천단위구분 포맷 : %,d";
		resStr = String.format(str, 123456789);
		System.out.println(resStr);
		str = "천단위구분 포맷 : %,.2f";
		resStr = String.format(str, 10123412.123);
		System.out.println(resStr);
		
		str = "문자열 포맷 : %s";
		resStr = String.format(str, "문자열");
		System.out.println(resStr);
		
		str = "일정한 영역에서 오른쪽 정렬 포맷 : %5d";
		resStr = String.format(str, 123);
		System.out.println(resStr);
		
		str = "일정한 영역에서 왼쪽 정렬 포맷 : %-5d";
		resStr = String.format(str, 123);
		System.out.println(resStr);
		
		str = "일정한 영역에서 오른쪽 정렬 포맷 : %5s";
		resStr = String.format(str, "abc");
		System.out.println(resStr);
		
		str = "일정한 영역에서 왼쪽 정렬 포맷 : %-5s";
		resStr = String.format(str, "abc");
		System.out.println(resStr);
		
		str = "빈 공간을 0으로 채우기 포맷 : %05d";
		resStr = String.format(str, 123);
		System.out.println(resStr);
		
		str = "%s의 나이는 %d 세 입니다.";
		resStr = String.format(str, "홍길동", 23);
		System.out.println(resStr);
		
		str = "%2$s의 나이는 %1$d 세 입니다.";
		resStr = String.format(str, 23, "홍길동");
		System.out.println(resStr);
		
		str = "아스키 코드 %1$d 는 아스키 문자 %1$c 입니다.";
		resStr = String.format(str, 65);
		System.out.println(resStr);

 

결과:

 

 

 

 


 

 

▶Integer.parseInt : 문자열을 정수로 변환

int resInt = Integer.parseInt("12345");
System.out.println(resInt + 10);

 

결과:

 

 

 


 

 

▶ Double.parseDouble : 문자열을 실수로 변환

double resDouble = Double.parseDouble("123.456");
System.out.println(resDouble + 10);

 

결과:

 

 

 


 

 

▶+ : 정수를 문자열로/ 실수를 문자열로 변환

String resStr = "" + resInt;
System.out.println(resStr + ".");
		
resStr = "" + resDouble;
System.out.println(resStr + ".");

 

결과:

 

 

 


 

 

▶.toString()  : 정수를 문자열로/ 실수를 문자열로 변환(Wrapper 이용하는 방법)

resStr = Integer.valueOf(resInt).toString();
System.out.println(resStr + ".");
		
resStr = Double.valueOf(resDouble).toString();
System.out.println(resStr + ".");

 

결과:

 

 

 

 

 

 


 

 

● StringBuilder 클래스

 

 

 

 

 

 

 

▶.append  : 기존 문자열 뒤에 데이터 삽입

StringBuilder sb = new StringBuilder();
		
// 기존 문자열 뒤에 데이터 삽입
sb.append("StringBuilder의 메서드");
sb.append(" append() 는 기존 문자열 뒤에 추가 합니다.\n");
System.out.println(sb);

 

결과:

 

 

 


 

 

 

▶.insert : 지정한 위치에 데이터 삽입

StringBuilder sb = new StringBuilder();
		
// 기존 문자열 뒤에 데이터 삽입
sb.append("StringBuilder의 메서드");
sb.append(" append() 는 기존 문자열 뒤에 추가 합니다.\n");
System.out.println(sb);

 

결과:

 

 

 


 

 

 

▶.replace : 수정할 문자열의 위치를 작성하여 수정

		// 수정 처리를 할 때 동일한 문자열에 대해 전부 수정될 수 있도록 반복문을 활용해 본다.
		int idx = -1;
		String find = "메서드";
		while(true) {
			idx = sb.indexOf(find, idx + 1);
			if(idx != -1) {
				sb.replace(idx, idx + find.length(), "method");
			} else {
				break;
			}
		}
		System.out.println(sb);

 

결과:

 

 


 

 

 

▶.delete : 삭제할 문자열의 위치를 작성하여 삭제

		// 삭제 처리를 할 때 동일한 문자열에 대해 전부 삭제될 수 있도록 반복문을 활용해 본다.
		idx = -1;
		find = " method";
		while(true) {
			idx = sb.indexOf(find, idx + 1);
			if(idx != -1) {
				sb.delete(idx, idx + find.length());
			} else {
				break;
			}
		}
		System.out.println(sb);

 

결과:

 

 

 

 

 

 

 

 


 

● StringTokenizer 클래스

 

 

 

 

 

▶.append  : 기존 문자열 뒤에 데이터 삽입

public static void main(String[] args) {
		String str = "StringTokenizer로 문자열을 분리하는 예제";
		StringTokenizer st = new StringTokenizer(str, " ");
		
		while(st.hasMoreTokens()) {
			System.out.println(st.nextToken());
		}
}

 

결과:

 

 

반응형