FIF's 코딩팩토리

자바 기초 NCS교육과정(28)-StringTokenizer 본문

Back-End/국비 NCS교과과정

자바 기초 NCS교육과정(28)-StringTokenizer

FIF 2019. 7. 31. 16:15
반응형

 StringTokenizer 클래스와 split의 차이점이라고 한다면 split은 String클래스의 메소드로 추출한 문자를 배열로 저장하고, StringTokenizer는 메소드가 아니라 java.util에 포함되어 있는 자체 클래스이다. 그렇기 때문에 사용하는 방법이 다르고 StringTokenizer클래스는 내부에 꼭 넣어야 하는 메소드가 존재한다.

 

 

■ StringTokenizer의 3가지 메소드 

이 클래스는 문자열을 토큰이라는 용어로 부르는데 사용방법은 메소드를 이용하여 전체 토큰의 수는 몇개 있는지, 사용할 토큰이 있는지를 판단하여 토큰을 읽어온다.

리턴타입

메소드

기능

int

countTokens

마지막으로 토큰을 읽어오기전 남아있는 토큰의 수

boolean

hasMoreTokens

토큰이 남아있으면 true, 없으면 false

String

nextToken

토큰 읽어오기

 

위 그림에 보이는 메소드중 nextToken을 포함한 2가지 이상의 메소드를 이용하면 문자열을 분리하여 원하는 결과값을 도출할 수 있는데, countToken 메소드로 토큰의 수를 파악하고 nextToken 으로 토큰을 읽어오던지, hasMoreTokens 메소드로 토큰이 남아있는지 확인후 nextToken 으로 토큰을 읽어오는 방법이 있다.

 

Java133_StringTokenizer.java

public class Java133_StringTokenizer {

	public static void main(String[] args) {
		
		StringTokenizer st = new StringTokenizer("java,,jsp/spring",",/");//,",/"(,또는/)(없으면 공백)
		System.out.println("토큰갯수 :"+st.countTokens());
		while(st.hasMoreTokens())
			System.out.println(st.nextToken());
		System.out.println("=========================================");
		String[] arr=new String("java,,jsp/spring").split("[,/]");
		System.out.println("배열크기:"+arr.length);
		for(String ss:arr)
			System.out.println(ss);
		
	}

}

출력결과

 

반응형
Comments