java StringMethod_trim, indexOf, replace, split, Token, valueOf

limchard·2023년 10월 26일
0

java

목록 보기
33/48

trim

trim에 대해 알아보자.
trimd은 지정된 문자열에서 앞,뒤 공백을 제거해주는 것이다.
주의할점은 글자 사이의 공백은 제거가 불가능하다.

String str1="Have a Nice Day";
String str2="     Happy Day    ";
// trim이 공백제거. 단 글자 중간의 공백은 제거 못한다. 앞뒤 공백만 제거 가능하다.
System.out.println("str2의 길이 : "+str2.length());
System.out.println("str2의 앞뒤 공백제거 후 길이: "+str2.trim().length());  
System.out.println("*"+str2+"*");
System.out.println("*"+str2.trim()+"*");

결과

str2의 길이 : 18
str2의 앞뒤 공백제거 후 길이: 9
* Happy Day *
*Happy Day*

indexOf

indexOf에 대해 알아보자.

indexOf는 주어진 문자열에서 해당하는 문자가 몇번째에 있는지 알려주는 명령어이다.

//indexOf
System.out.println("str1에서 H의 인덱스: "+str1.indexOf('H'));
System.out.println("str1에서 H의 인덱스: "+str1.indexOf('D'));
System.out.println("str1에서 H의 인덱스: "+str2.indexOf('H'));
System.out.println("str1에서 H의 인덱스: "+str2.trim().indexOf('H'));

결과

str1에서 H의 인덱스: 0
str1에서 H의 인덱스: 12
str1에서 H의 인덱스: 5
str1에서 H의 인덱스: 0

replace

replace에 대해 알아보자.
replace는 문자열에서 특정 문자를 바꾸는 명령어이다.
str1.replace("기존문자","바꿀문자")

//replace
System.out.println("문자열 일부를 변경");
System.out.println(str1.replace('a', '*'));
System.out.println(str1.replace("Nice", "Good"));

결과

문자열 일부를 변경
H*ve * Nice D*y
Have a Good Day

split

split에 대해 알아보자.
나는 배열을 예시로 해서 배웠다.
해당 소스는 한번에 나열된 문자열을 특정 기준을 지정해 쪼개주는(분리하는) method이다.
원래는 문자가 일렬로 적혀진다.
split에 특정 문자를 기입하면 그 문자 기준으로 syso를 사용해 각각 적은것 처럼 print된다.

//문자열을 분리하는 메서드 split
String str3="red,blue,green,gray,white";
System.out.println(str3);
	
System.out.println(",로 분리하여 출력하기");
		
String[] arr=str3.split(",");
System.out.println("분리된 색상 갯수: "+arr.length);
		
// 출력
for(int i=0;i<arr.length;i++)
	System.out.println(arr[i]);
				
for(String color:arr) 
	System.out.println(color);

결과

red,blue,green,gray,white
,로 분리하여 출력하기
분리된 색상 갯수: 5
red
blue
green
gray
white

Token

package Day0703;

import java.util.StringTokenizer;

public class StringToken_07 {

    public static void main(String[] args) {
        // 문자열을 특정문자로 분리하는 방법들

        String str="red,magenta,gray,pink,yellow";

        System.out.println("String 객체의 split을 이용한 분리");
        String[]arrColors=str.split(",");
        System.out.println("총 "+arrColors.length+"개");

        for (int i=0;i< arrColors.length;i++){
            System.out.println(i+": "+arrColors[i]);
        }

        System.out.println("-------------------------------------");

        System.out.println("StringTokenizer 객체의 split을 이용한 분리");
        StringTokenizer st=new StringTokenizer(str,",");
        System.out.println("총 토큰수: "+st.countTokens());

        while(st.hasMoreTokens()){ // 다음토큰이 있으면 true, 없으면 false.. 즉 false값을 반환할때까지 while문 반복.
            System.out.println(st.nextToken());
        }
    }
}

결과

String 객체의 split을 이용한 분리
총 5개
0: red
1: magenta
2: gray
3: pink
4: yellow
-------------------------------------
StringTokenizer 객체의 split을 이용한 분리
총 토큰수: 5
red
magenta
gray
pink
yellow

valueOf (숫자를 문자로 형변환)

valueOf에 대해 알아보자.
해당 명령어는 print할 때에 형변환 해주는 소스코드이다.
숫자를 문자로 바꿀때에는 valueOf를 사용하지 않고 대따옴표""를 사용하면 되기에 자주 쓰이진 않는다.
그냥 이런게 있다.. 정도만 알아두면 좋을 것 같다.

//숫자를 문자로 바꿀때 ("" 대따옴표로 쓰면 되서 솔직히.. 안쓰임..)
String b1=12.5+" ";
System.out.println(b1);
		
String b2=100+"";
System.out.println(b2);
		
String b3=String.valueOf(100); // int를 String으로 바꿔주는 것. valueOf
String b4=String.valueOf(12.6);	// double을 String으로 바꿔주는 것. valueOf

결과

12.5
100
profile
java를 잡아...... 하... 이게 맞나...

0개의 댓글