-
[Java] StringTokenizer 사용 방법 / readLine(), nextToken() 차이점 <적용문제>JAVA 2024. 11. 22. 11:17반응형
StringTokenizer 사용방법
StringTokenizer st = new StringTokenizer("변수", "구분자", "참");
StringTokenizer를 사용하는 방식은 4가지가 있다.
① 변수만 지정할 경우 공백기준으로 문자열을 분리한다.
② 구분자를 지정해 구분자 기준으로 문자열을 분리한다.
③ 둘 이상의 구분자는 이어서 작성한다.
④ 구분자를 포함해 토근에 넣어 문자열을 분리한다.
*주의사항*
StringTokenizer은 import java.util.*; 을 추가해줘야 한다. 또한, String타입으로만
리턴하기 때문에 String타입을 제외하곤 형변환을 해줘야 한다.
1. 띄어쓰기 기준으로 분리하기.
StringTokenizer st = new StringTokenizer("변수")
- 변수만 지정할 경우 공백기준으로 문자열을 분리한다.
<console>
안녕하세요
코띵
블로그입니다.
2. 구분자 기준으로 분리하기.
StringTokenizer st = new StringTokenizer("변수", "구분자")
- 구분자를 지정해 구분자 기준으로 문자열을 분리한다.
<console>
안녕하세요
코띵
블로그입니다.
3. 둘 이상의 구분자 기준으로 분리하기.
StringTokenizer st = new StringTokenizer("변수", "구분자구분자")
- 둘 이상의 구분자는 이어서 작성한다.
<console>
안녕하세요
코띵
블로그입니다.
4. 구분자로 지정된 구분자도 토큰에 넣어 분리하기.
StringTokenizer st = new StringTokenizer("변수", "구분자구분자", "참")
- 구분자도 토근에 넣어 문자열을 분리한다.
<console>
안녕하세요
!
코띵
>
블로그입니다.
readLine(), nextToken() 차이점
BufferedReader 함수의 readLine() 메서드
두 줄에 수가 하나씩 주어졌을 때 입력을 받는 방법.
<console>
1
2
StringTokenizer 함수의 nextToken() 메서드
한 줄에 두 개의 수가 공백으로 구분되어 주어졌을 때 입력 받는 방법.
<console>
1 2
공백 단위로 입력을 받다가 라인 단위로 입력을 받으려면 readLine()메소드를 다시 사용하면 된다.
<console>
1 2
3
4
다시 공백 단위로 입력받으려면 st.nextToken() 메소드를 사용하면 될까?
<console>
1 2
3
4<엔터>
<엔터>를 입력하는 순간 에러 메세지가 뜰 것이다. 아래와 같이 객체를 다시 호출해야 한다.
StringTokenizer를 사용해 간단한 문제를 풀어보자!
과목명, 학점, 등급을 공백으로 구분하여 입력하고 과목명, 등급만 출력해 보자.
ObjectOrientedProgramming1 3.0 A+ IntroductiontoComputerEngineering 3.0 A+ ObjectOrientedProgramming2 3.0 A0
ObjectOrientedProgramming1 A+ IntroductiontoComputerEngineering A+ ObjectOrientedProgramming2 A0
<정답코드>
위 문제는 풀었다면 아래 적용문제를 풀어보자.
<적용문제>
다음 문제를 BufferedReader, StringTokenizer 를 사용해서 풀어보면 이해가 됐는지 도움이 될 것이다.
'JAVA' 카테고리의 다른 글
[Java] 추상 클래스란? (0) 2025.02.12 [Java] 싱글톤이란? (0) 2025.02.12 [Java] StringBuffer, StringBuilder, String 문자열 비교 <적용문제> (9) 2024.11.12 [Java] 동적 계획법 (DP: Dynamic programmig) 이해하기 <적용문제> (6) 2024.04.03 [Java] StringBuffer / StringBuilder 주요 메서드 (5) 2024.03.26