[Java] String 클래스 메서드

Minhee kang·2021년 10월 26일
0

Java

목록 보기
7/7
package com.use.java;

import java.util.Arrays;

public class temp {
	
	//String 클래스 메서드 
	
	public static void main(String[] args) {
		//1. startsWith() : 해당 문자로 시작하면 true 아니면 false반환 
		//   endsWith() : 해당 문자열로 끝나면 true 아니면 false반환
		String str1 = "aabskdnskaa";
		System.out.println(str1.startsWith("a"));   // true
		System.out.println(str1.startsWith("b"));   // false
		System.out.println(str1.endsWith("a"));    // true 
		System.out.println(str1.endsWith("b"));    // false
		
		//2. equals() : 두 문자열을 비교하여 같으면 true, 다르면 false반환 
		String str2 = "kkk";
		System.out.println(str1.equals(str2));     // false
		
		//3. indexOf() : 해당 문자가 문자열의 몇번째 인덱스에 존재하는지 반환 
		// lastIndexOf() : 해당 문자가 마지막에 어디 인덱스에 존재하는지 반환 
		String str3 = "apple";
		System.out.println(str3.indexOf("p"));  // 1
		System.out.println(str3.lastIndexOf("p")); //2
		
		//4. length() : 문자열 길이 반환 
		String str4 = "kkkhi";
		System.out.println(str4.length());   //5  
		
		//5. replace() : 문자열에 지정한 문자 "" 가 있으면 새로 지정한 문자 ""로 바꿔서 출력 
		String str5 = "A*B*C*D";
		System.out.println(str5.replace("*", "_"));  // A_B_C_D
		
		//6. replaceAll() : 정규표현식을 지정한 문자열로 출력
		String str6 = "AB CD";
		System.out.println(str6.replaceAll("\\p{Space}", "_"));  // AB_CD
		
		//7. split() : 지정한 문자로 문자열을 나눠 배열로 반환
		String str7 = "A:B:C:D:abcd";
		String[] arr = str7.split(":");
		System.out.println(Arrays.toString(arr));  //[A, B, C, D, abcd]
		
		String[] arr2 = str5.split("\\*");   //*과 같은 특수문자 사용할 때는 \\을 앞에 붙혀줘야함 
		System.out.println(Arrays.toString(arr2));   //[A, B, C, D]
		
		//8. substring:문자열에 지정한 범위에 속하는 문자열을 반환.(시작범위에 값은 포함하고, 끝나는 범위에 값은 포함하지않는다.) 
		String str8 = "ABCDEF";
		System.out.println(str8.substring(0, 2));   //AB
		
		//9. toLowerCase(): 문자열에 대문자를 소문자로 반환 
		//   toUpperCase() : 문자열에 소문자를 대문자로 반환 
		String str9 = "abcDEF";
		System.out.println(str9.toLowerCase());   //abcdef
		System.out.println(str9.toUpperCase());  //ABCDEF
		
		//10. toString() : 문자열 그대로 반환  
		System.out.println("abc".toString());   //abc
		
		//11. trim() : 문자열 양쪽 공백 없애줌 
		String str11 = "     java java java     "; 
		System.out.println(str11.trim());  // java java java
		
		//12. valueOf() :지정한 개체의 원시 값을 반환
		// 객체가 아니면서 메서드도 가지지 않는 데이터. string, number, bigint, boolean, undefined, symbol  
		int i = 12345;
		long l = 1L;
		char c = '1';
		System.out.println("valueOf: " + String.valueOf (i));  //valueOf: 12345
		System.out.println("valueOf: " + String.valueOf (l));  //valueOf: 1
		System.out.println("valueOf: " + String.valueOf (c));  //valueOf: 1
		
		//13. compareTo() : 기준값에 비교대상이 (앞에서부터)포함되어있을 경우 서로의 문자열 길이의 차이값을 retrun. (대소문자 구분)  
		String str13 = "abcd";
		
		//비교대상에 문자열이 표함되어 있을 경우  
		System.out.println(str13.compareTo("abcd"));  //0
		System.out.println(str13.compareTo("abc"));   //1
		System.out.println(str13.compareTo("c"));     //-2
		//=> comparTo는 같은 위치의 문자만 비교
		//=> 맨 앞에서 틀렸기 때문에 바로 아스키값으로 비교처리를 한다.
		//=> "abcd" 와 "c" 를 비교해줄 경우 첫번째 위치에서 비교가 실패했기 때문에
        //=> "a"와 "c"의 아스키코드 값의 차이값을 리턴해준다.
		
		//비교대상에 문자열이 포함되어 있지 않은 경우
		System.out.println(str13.compareTo("zefd"));  //-25
		System.out.println(str13.compareTo("ABCD")); // 32
		
		//14. contains:두개의 String을 비교해서 비교대상 String을 포함하고 있으면true, 다르면 false를 반환
		System.out.println(str13.contains("abcd"));  //true
		System.out.println(str13.contains("c"));    //true
		System.out.println(str13.contains("aBCD"));  //false
		System.out.println(str13.contains("zefd"));  //false
		
		//15. charAt() :지정한 index번째에 문자를 반환
		String str15 = "melon";
		System.out.println(str15.charAt(3));  //o
		
		//16. concat() : 문자와 문자를 결합
		System.out.println(str13.concat(str15)); //abcdmelon
		
		//17. replaceFirst() : 문자열에 지정한 문자" "가 있으면 첫번째만 새로지정한 문자" "로 바꿔서 출력
		String str17 = "A*B*C*D";
		System.out.println(str17.replaceFirst("\\*", "_"));  //A_B*C*D
		

	}
}

0개의 댓글

관련 채용 정보