|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
public interface CharacterIterator
이 인터페이스는, 텍스트에 있어서의 쌍방향의 반복의 프로토콜을 정의합니다. 반복자는, 결합된 문자 순서에 대해 반복합니다. 문자는, getBeginIndex()로 반환되는 값으로 시작되어, getEndIndex()-1 로 반환되는 값까지 계속되는 값을 사용해 인덱스 처리됩니다.
반복자는, 유효 범위가 getBeginIndex() ~ getEndIndex()의 현재의 문자 인덱스를 유지합니다. 값 getEndIndex()가 포함되어 있는 것은, 제로장의 텍스트 범위의 조작을 가능하게 하기 위한(해)와 역사적인 이유에 의합니다. 현재의 인덱스는, getIndex()를 호출하는 것에 의해 검색할 수 있어 setIndex(), first(), 및 last()를 호출하는 것에 의해 직접 설정할 수 있습니다.
previous() 메소드와 next() 메소드는 반복 처리에 사용됩니다. 이러한 메소드는, getBeginIndex() ~ getEndIndex() -1 의 범위로부터 빗나가도록(듯이) 움직이면(자), DONE 를 돌려주는 것으로, 반복자가 순서의 마지막에 이른 것을 나타냅니다. 또, 다른 메소드로부터 DONE 가 돌려주어졌을 경우는, 현재의 인덱스가 이 범위외에 있는 것을 나타냅니다.
례:
텍스트의 처음부터 끝나의 방향에 더듬습니다.
public void traverseForward(CharacterIterator iter) { for(char c = iter.first(); c ! = CharacterIterator.DONE; c = iter.next()) { processChar(c); } }텍스트를 마지막으로부터 초의 방향에 역방향으로 더듬습니다.
public void traverseBackward(CharacterIterator iter) { for(char c = iter.last(); c ! = CharacterIterator.DONE; c = iter.previous()) { processChar(c); } }지정된 텍스트의 위치에서 전방향과 역방향의 양방에 더듬습니다. 이 예에서의 notBoundary()의 호출은, 그 외의 정지 기준을 나타내고 있습니다.
public void traverseOut(CharacterIterator iter, int pos) { for (char c = iter.setIndex(pos); c ! = CharacterIterator.DONE && notBoundary(c); c = iter.next()) { } int end = iter.getIndex(); for (char c = iter.setIndex(pos); c ! = CharacterIterator.DONE && notBoundary(c); c = iter.previous()) { } int start = iter.getIndex(); processSection(start, end); }
StringCharacterIterator
,
AttributedCharacterIterator
필드의 개요 | |
---|---|
static char |
DONE
반복자가 텍스트의 마지막이나 초에 이르렀을 때에 반환되는 정수입니다. |
메소드의 개요 | |
---|---|
Object |
clone ()
반복자의 카피를 작성합니다. |
char |
current ()
현재 위치 (getIndex()에 의해 반환되는 위치)에 있는 문자를 가져옵니다. |
char |
first ()
위치를 getBeginIndex()로 설정해, 그 위치에 있는 문자를 돌려줍니다. |
int |
getBeginIndex ()
텍스트의 개시 인덱스를 돌려줍니다. |
int |
getEndIndex ()
텍스트의 종료 인덱스를 돌려줍니다. |
int |
getIndex ()
현재의 인덱스를 돌려줍니다. |
char |
last ()
위치를 getEndIndex()-1 (텍스트가 빈 상태(empty)의 경우는 getEndIndex())로 설정해, 그 위치에 있는 문자를 돌려줍니다. |
char |
next ()
반복자의 인덱스를 1 늘려, 새로운 인덱스에 있는 문자를 돌려줍니다. |
char |
previous ()
반복자의 인덱스를 1 줄여, 새로운 인덱스에 있는 문자를 돌려줍니다. |
char |
setIndex (int position)
위치가 지정된 텍스트의 위치로 설정해, 그 문자를 돌려줍니다. |
필드의 상세 |
---|
static final char DONE
메소드의 상세 |
---|
char first()
getBeginIndex()
char last()
getEndIndex()
char current()
getIndex()
char next()
char previous()
char setIndex(int position)
position
- 테스트내의 위치. 이 값은,
getBeginIndex() ~ getEndIndex()의 범위내에 없으면 안 된다. 무효인 값을 지정하면(자),
IllegalArgumentException 가 throw 된다
int getBeginIndex()
int getEndIndex()
int getIndex()
Object clone()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.