문자열

yoongiiii·2023년 10월 21일

✍🏻 문자열 다루기

1. 문자열

	String s = "I like Java and Python and C.";
  • 문자열의 길이 .length()
    System.out.println(s.length()); //29
  • 대소문자 변환
    -모두 대문자 .toUpperCase()
    -모두 소문자 .toLowerCase()
	System.out.println(s.toUpperCase()); //문자열을 모두 대문자로 
    System.out.println(s.toLowerCase()); //문자열을 모두 소문자로
  • 포함 관계 .contains(" ")
	System.out.println(s.contains("Java")); //포함된다면 true
  • 해당 문자의 (처음) 위치 정보 .indexOf(" ")
  • 해당 문자의 (마지막) 위치 정보 .lastIndexOf(" ")
    -문자열의 첫 번째 위치는 0부터 시작!!!
    -문자열에 없는 단어면 -1
	 System.out.println(s.indexOf("Java")); 
     //문자열에 포함된 문자면 처음 일치하는 정보의 위치
  • 시작 문자열 확인 .startsWith(" ")
	 System.out.println(s.startsWith("I like")); //이 문자열로 시작하면 true
  • 마지막 문자열의 확인 .endWith(" ")
	System.out.println(s.endWith(".")); //이 문자열로 끝나면 true 
  • 문자열 변환
    -단어 교체 .replace("교체전문자" , "교체후문자")
    -시작 위치 새롭게 지정 .substring(인덱스 값)
    -시작과 끝 위치 새롭게 지정 .substring(여기부터 , 여기 바로 앞 까지 )
    -앞 뒤 공백 제거 .trim()
    -문자열 결합 .concat(" ")
    -문자열 자르기 .split(" ") 지정한 문자를 기준으로 문자열을 잘라 배열로 반환 (참고)
    -list를 문자열로 합치기
	System.out.println(s.replace(" and", ",")); // " and"를 ","로 교체
    
    
    System.out.println(s.substring(7));
    //System.out.println(s.substring(s.indexOf("Java")));
    //인덱스 기준 7부터 시작 (이전 내용은 삭제)
    
    
   System.out.println(s.substring(s.indexOf("Java"), s.indexOf("."))); 
   //"Java"가 시작하는 위치부터 "."이 시작하는 위치 바로 앞까지
	
    
    s = "     I love Java.        ";
    System.out.println(s.trim()); //앞뒤 공백 제거
    
    //문자열 결합
    String s1 = "Java";
    String s2 = "Python";
    System.out.println(s1 + s2); //JavaPython
    System.out.println(s1 + "," + s2); //Java,Python
    System.out.println(s1.concat(",").concat(s2)); //Java,Python
    
    //문자열 자르기
    String str = "ABC,EE,QQ1,5112";
	String[] arr = str.split(",");
    for(String cut : arr) {
		System.out.println(cut);
		}		
	}
    
    //list를 문자열로 합치기 
    String s = String.join("", list);

2. 문자열 형 변환

  • String ==> int Integer.parseInt()
	String strNumber = "1000";
    int number = Integer.parseInt(strNumber);
  • int ==> String String. valueOf()
	int i = 77;
    String str = String.valueOf(i);
  • 문자열에서 정수로 바꾸는 과정에서 에러가 많이 발생
    -Integer.parseInt 전에 공백 제거
	int val = Integer.parseInt("     비밀번호 : 486     " . trim());
  • cf. 정수타입 => byte, short, char, int, long

3. 문자열 비교

  • 문자열 내용이 같으면 true, 다르면 flase
    -문자열 비교 .equals( )
    -(대소문자 구분 없이) 문자열 비교 .equalsIgnoreCase( )
  • JAVA에서 문자열의 내용을 비교할 땐 equals 사용!!!!
	//문자열 비교 심화
	s1 = "1234"; //벽에 붙은 메모지(참조)의 비밀번호 정보 (내용)
    s2 = "1234";
    System.out.println(s1.equals(s2)); //true (내용)
    System.out.println(s1 == s2); //true (참조)
    
    s1 = new String("1234"); //각각의 메모지(참조)의 비밀번호 정보 (내용)
    s2 = new String("1234");
    System.out.println(s1.equals(s2)); //true (내용)
    System.out.println(s1 == s2); //false (참조)

4. 특수 문자

  • Escape Sequence, Escape character, Special character
    -줄바꿈 \n
    -탭 \t
    -역슬래시 \
    -큰 따옴표 \"
    -작은 따옴표 \'
	char c = 'A';
    c = '\'';
    System.out.println(c); //'

0개의 댓글