String Class

전영덕·2023년 2월 1일
0

Java Study

목록 보기
30/36
public class Main01 {
	public static void main(String[] args) {

		String str1 = "자바 Programming";
		String str2 = new String("Java");
		System.out.println("str1 = " + str1);
		System.out.println("str2 = " + str2);
		System.out.println("------------------");
        
		// 문자열의 길이 조회
		int str1_len = str1.length();
		int str2_len = str2.length();
		System.out.println("str1_length  = " + str1_len);
		System.out.println("str2_length  = " + str2_len);
		System.out.println("------------------");
        
		// 특정 문자열이 처음으로 나타나는 위치를 조회
		int str1_position = str1.indexOf(" ");
		int str2_position = str2.indexOf("a");
		System.out.println("str1_position : " + str1_position);
		System.out.println("str2_position : " + str2_position);
		//여기서 출력되는 2 와 1은 컴퓨터기준으로 카운트를 한 것으로 0부터 세어서 한 자리의 차이가 난다.
		System.out.println("------------------");
        
		//특정 문자열이 나타나는 마지막 위치를 조회
		int str1_last_position = str1.lastIndexOf(" ");
		int str2_last_position = str2.lastIndexOf("a");
		System.out.println("str1_last_position : " + str1_last_position);
		System.out.println("str2_last_position : " + str2_last_position);
		//여기서 출력되는 2 와 3은 컴퓨터기준으로 카운트를 한 것으로 0부터 세어서 한 자리의 차이가 난다.
		
		//A를 B로 변경하기
		String new_str1 = str1.replace(" ","-");
		String new_str2 = str2.replace("a","A");
		System.out.println(new_str1);
		System.out.println(new_str2);
		System.out.println("------------------");
		
		//대소문자 변경
		String upper_str1 = new_str1.toUpperCase();
		String lower_str2 = new_str2.toLowerCase();
		System.out.println("upper : "+ upper_str1);
		System.out.println("lower : "+ lower_str2);
		System.out.println("------------------");
		
		//문자열의 앞뒤 공백 제거
		String input = "   enjoy  java   programming   ";
		String oupput = input.trim();
		System.out.println("input : " + input);
		System.out.println("output : " + oupput);
		System.out.println("------------------");
		//회원가입을 할 때 앞뒤 공백을 제거해줌. 사용자는 언제나 실수할 수 있으니 개발자는 최대한 사용자의 실수를 막아줘야함.
		//경고문구는 쓰겠지만 아무도 안 봄.
		
		//중간 공백포함한 모든 제거 - 여러가지 방법 중 하나
		String output2 = input.replace(" ","");
		System.out.println("output2 : " + output2);
		System.out.println("------------------");
		
		//문자열 비교하기
		boolean isSame = str1.equals(str2);
		if (isSame) {System.out.println("같다");
		}
		else {System.out.println("다르다");
		}
		System.out.println("------------------");
		
		//문자열 자르기
		//- 첫번째 파라미터 : 시작위치
		//- 두번쨰 파라미터 : 끝 위치
		String sub_str1 = str1.substring(0, 2);
		String sub_str2 = str1.substring(3);
		//두번째 파라미터가 없는 경우, 그 지점부터 끝까지 잘라서 취한다.
		System.out.println(str1);
		System.out.println("sub_str1 : " + sub_str1);
		System.out.println("sub_str2 : " + sub_str2);
		System.out.println("------------------");

		//형식에 따른 문자열 출력을 위한 static메서드 활용
		/*
		 * - %d 	: 정수
		 * - %s 	: 문자
		 * - %f 	: float 형 소수
		 * - %3d	: 숫자를 3자리로 맞춰서출력
		 * 			  자릿수가 맞지 않으면, 앞에 공백 출력
		 * - %03d 	: 자릿수가 맞지 않으면 0을 출력
		 * - %3s 	: 문자열을 3자리로 맞춰서 출력
		 * 			  자릿수가 맞지 않으면 앞에 공백출력
		 * 			  %03s 와 같은 형식은 사용 불가
		 */
		
		int yy = 2023;
		int mm = 2;
		int dd = 1;
		String gender = "남성";
		String result = String.format("%d년 %02d월 %02d일 %s", yy,mm,dd,gender);
		System.out.println(result);
		System.out.println("------------------");

		//주어진 글자를 기준으로 잘라내어서 배열로 변환
		String src = "C++/Java/C#/Javascripit/VB";
		String[] data = src.split("/");
		
		for(int i= 0; i<data.length; i++) {
			System.out.println(data[i]);
		}
	}
}

0개의 댓글