✏️ 문제풀이/백준

[백준/Java] 1152번 :: 단어의 개수

bono-hye 2024. 4. 11. 13:04

 

1) BufferedReader 사용

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main
{
	public static void main(String[] args) throws IOException
	{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str = br.readLine();
		StringTokenizer st = new StringTokenizer(str, " ");		// str을 공백을 기준으로 문자열로 나눔
		
		System.out.println(st.countTokens());		// st에 남아있는 토큰 갯수 반환
	}
}

 

💡 정리

split(" ")을 사용해서 풀이했었는데, 틀렸습니다가 떴다,,,,

예제를 가지고 테스트해봤을 때는 출력 값이 잘 나왔는데 왜 그럴까 하며 찾아보았더니

split을 쓰면 공백까지 카운트 된다는 것을 생각하지 못했다!!

그래서 StringTokenizer를 사용해서 풀이했다.

갯수 세는 것은 countTokens 메소드를 이용해서 남아있는 토큰의 갯수를 얻어내었다~!

StringTokenizer를 많이 사용하지 않아서 바로 떠오르지 않았다. 익숙하지 않을 수록 더 많이 사용해보도록 하자!!!