상세 컨텐츠

본문 제목

split & StringTokenizer

프로그래밍/Java

by ........? 2012. 5. 15. 15:51

본문


split

String value = A12345|B67891|C23456

String test[] = value.split("|");

test[0] = A12345

test[1] = B67891

test[2] = C23456

split은 ()안에 문자를 기준으로 값을 짤라준다


▶A12345||C23456 처럼 중간에 빈값이 있을경우

test[0] = A12345

test[1] =

test[2] = C23456

로 나온다


▶A12345|B67891| 처럼 끝에 빈값이 있을경우

test[0] = A12345

test[1] = B67891

test[2] =

로 나온다


즉, split은 구분자를 기준으로 데이터가 없더라도 그 결과를 반환해준다


StringTokenizer

String value = A12345|B67891|C23456

StringTokenizer tokens = new StringTokenizer(value, "," );를 사용 할 경우

// "," 는 구분자

for( int x = 1; tokens.hasMoreElements(); x++ ){

    System.out.println( "문자(열) " + x + " : " + tokens.nextToken() );

}

    문자(열) 1 : A12345

    문자(열) 2 : B67891

     문자(열) 3 : C23456

일반적인 결과는 split과 같다


▶A12345||C23456 처럼 중간에 빈값이 있을경우

    문자(열) 1 : A12345

    문자(열) 2 :  C23456


▶A12345|B67891| 처럼 끝에 빈값이 있을경우

    문자(열) 1 : A12345

     문자(열) 2 : B67891

결론 : StringTokenizer의 경우는 구분자 사이에 분해할 요소의 값이 존재하지 않으면 무시


실행속도는 split이 3~5배 정도 느리다


'프로그래밍 > Java' 카테고리의 다른 글

resonse.sendRedirect() & forward  (0) 2012.05.22
Static 변수  (0) 2012.05.16
substring()  (0) 2012.05.15
Calender.getInstance() & DAY_OF_WEEK  (0) 2012.05.09
indexOf  (0) 2012.05.09

관련글 더보기

댓글 영역