Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- JavaScript
- 프론트엔드
- html
- Linux
- 웹개발
- github
- DML
- mybatis
- select
- 프로그래머스 SQL
- SQL
- 백엔드
- scanner
- 자바스크립트
- 자바
- 클래스
- 입출력
- Git
- 개발자
- where
- StringBuilder
- 메서드
- 백준
- MySQL
- 스프링
- BufferedReader
- 알고리즘
- sql문
- select문
- 예외처리
- 프로그래머스 sql 고득점 kit
- 데이터 조회
- 정보처리기사
- 리눅스
- String클래스
- Java
- 정보처리기사필기요약
- order by
- 프로그래밍
- 형변환
Archives
- Today
- Total
ToBe끝판왕
[ JAVA ] 문자열분리 / StringTokenizer 클래스 / Split( ) 메서드 본문
반응형
자바( JAVA )에서 문자열 구분을 위해 자주 사용되는
Split( ) 메서드와 StringTokenizer 클래스에 대해 정리해보려 한다.
StringTokenizer 클래스
• java.util 패키지에 포함되어 있는 클래스
• java.util.StringTokenizer; ( import )
• 클래스이기 때문에, 객체를 생성해야 한다.
• 지정한 한가지 구분자로 문자열을 나눌 수 있다. ( 나누어진 문자열을 Token이라고 부른다. )
• 구분자를 생략하면 공백이 기본구분자가 된다.
• StringTokenizer 생성
1)
StringTokenizer st = new StringTokenizer( 문자열 );
=> 띄어쓰기 기준으로 문자열을 분리
2)
StringTokenizer st = new StringTokenizer( 문자열, 구분자 );
=> 구분자를 기준으로 문자열을 분리
3)
StringTokenizer st = new StringTokenizer( 문자열, 구분자, true/false );
=> 구분자를 기준으로 문자열을 분리 시
구분자도 토큰으로 넣을지 ( true )
아니면 포함시키지 않을 것인지( false )결정
• StringTokenizer 클래스 주요 메서드
메서드 | 설명 | 리턴타입 |
nextToken( ) | 다음 토큰을 리턴한다. 이전 토큰은 제거 |
String |
hasMoreToknes( ) | 리턴할 다음 토큰이 남아있으면 true 리턴할 다음 토큰이 없으면 false |
boolean |
countTokens( ) | 남아있는 토큰의 개수를 리턴 | int |
• StringTokenizer 클래스 예시
public class Study {
public staic void main( String[] args ) {
String source = " 100, 200, 300, 400 ";
StringTokenizer st = new StringTokenizer( source, "," );
while( st.hasMoreTokens() ) {
System.out.println( st.nextToken() );
}
}
}
100
200
300
400
Split( ) 메서드
• String 클래스의 메서드이다.
• 지정한 구분자로 문자열을 나눠 배열에 저장
• 공백 문자열도 포함
• split( ) 메서드 예시
public class Study {
public static void main( String[] args ) {
String Str = "a@b3c%d";
String[] strArr = Str.split( "@|#|%" );
System.out.println( Arrays.toString( strArr ) );
}
}
정규식에서 '|' 기호는 or 연산을 수행합니다.
따라서 '@' , '#' , '%' 기호를 구분자로 하여 문자열을 나눕니다.
※ 정규표현식
차이점
• StringTokenizer는 문자 or 문자열로 구분 / split( ) 메서드는 정규표현식으로 구분
• StringTokenizer는 지정한 한 가지 구분자로 나누고, split( ) 메서드는 여러 개의 구분자 지정 가능
• 속도 : StringTokenizer > split( )
반응형
'■ 공부 기록 > 개념 정리' 카테고리의 다른 글
[ 개념 ] DIP ( Dependency Inversion Principle ) (5) | 2024.10.29 |
---|---|
[ JPA ] ORM의 개념 / 장단점 (0) | 2022.06.03 |
[ JAVA ] 문자열클래스 / String / StringBuffer / StringBuilder (0) | 2022.05.24 |
[ JAVA ] Exception 개념 / 예외처리( try-catch문 ) (0) | 2022.05.17 |
[ JAVA ] 입출력 / Scanner / BufferedReader / InputStream (0) | 2022.05.16 |
Comments