JavaTM 2 Platform
Standard Ed. 5.0

java.text
ÀÎÅÍÆäÀ̽º CharacterIterator

¸ðµç ½´ÆÛ ÀÎÅÍÆäÀ̽º:
Cloneable
¾Ë·ÁÁø ¼­ºê ÀÎÅÍÆäÀ̽º ¸ñ·Ï :
AttributedCharacterIterator
¾Ë·ÁÁø ±¸Çö Ŭ·¡½º ¸ñ·Ï:
Segment, StringCharacterIterator

public interface CharacterIterator
extends Cloneable

ÀÌ ÀÎÅÍÆäÀ̽º´Â ÅؽºÆ®¿¡ À־ÀÇ ½Ö¹æÇâÀÇ ¹Ýº¹ÀÇ ÇÁ·ÎÅäÄÝÀ» Á¤ÀÇÇÕ´Ï´Ù. ¹Ýº¹ÀÚ´Â °áÇÕµÈ ¹®ÀÚ ¼ø¼­¿¡ ´ëÇØ ¹Ýº¹ÇÕ´Ï´Ù. ¹®ÀÚ´Â 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 (ÅؽºÆ®°¡ ºñ¾îÀÖ´Â °æ¿ì´Â getEndIndex())·Î ¼³Á¤ÇØ, ±× À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 char next ()
          ¹Ýº¹ÀÚÀÇ À妽º¸¦ 1 ´Ã·Á, »õ·Î¿î À妽º¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 char previous ()
          ¹Ýº¹ÀÚÀÇ À妽º¸¦ 1 ÁÙ¿©, »õ·Î¿î À妽º¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 char setIndex (int position)
          À§°ªÀÌ ÁöÁ¤µÈ ÅؽºÆ®ÀÇ À§Ä¡·Î ¼³Á¤ÇØ, ±× ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 

ÇʵåÀÇ »ó¼¼

DONE

static final char DONE
¹Ýº¹ÀÚ°¡ ÅؽºÆ®ÀÇ ¸¶Áö¸·À̳ª ÃÊ¿¡ À̸£·¶À» ¶§¿¡ ¸®ÅÏµÈ Á¤¼öÀÔ´Ï´Ù. °ªÀº '\\uFFFF'¿©, À¯È¿ÇÑ Unicode ij¸¯ÅÍ ¶óÀÎÀ¸·Î »ç¿ëÇÒ ¼ö ¾ø´Â ¡¸¹®ÀÚ°¡ ¾Æ´Ï´Ù¡¹°ªÀÔ´Ï´Ù.

°ü·Ã Ç׸ñ:
Á¤¼ö Çʵ尪
¸Þ¼­µåÀÇ »ó¼¼

first

char first()
À§Ä¡¸¦ getBeginIndex()·Î ¼³Á¤ÇØ, ±× À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÅؽºÆ®³»ÀÇ ¼±µÎ ¹®ÀÚ. ÅؽºÆ®°¡ ºñ¾îÀÖ´Â °æ¿ì´Â DONE
°ü·Ã Ç׸ñ:
getBeginIndex()

last

char last()
À§Ä¡¸¦ getEndIndex()-1 (ÅؽºÆ®°¡ ºñ¾îÀÖ´Â °æ¿ì´Â getEndIndex())·Î ¼³Á¤ÇØ, ±× À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÅؽºÆ®³»ÀÇ ¸¶Áö¸· ¹®ÀÚ. ÅؽºÆ®°¡ ºñ¾îÀÖ´Â °æ¿ì´Â DONE
°ü·Ã Ç׸ñ:
getEndIndex()

current

char current()
ÇöÀç À§Ä¡ (getIndex()¿¡ ÀÇÇØ ¸®ÅÏµÈ À§Ä¡)¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ÃëµæÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÇöÀç À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ. ÇöÀç À§°ªÀÌ ÅؽºÆ®ÀÇ ¸¶Áö¸·À» Áö³ª°í ÀÖ´Â °æ¿ì´Â DONE
°ü·Ã Ç׸ñ:
getIndex()

next

char next()
¹Ýº¹ÀÚÀÇ À妽º¸¦ 1 ´Ã·Á, »õ·Î¿î À妽º¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù. °á°úÀÇ À妽º°¡ getEndIndex()º¸´Ù Å«Áö, °Å±â¿¡ µ¿ÀÏÇÑ °æ¿ì, ÇöÀçÀÇ À妽º°¡ getEndIndex()¿¡ ¸®¼Â µÇ¾î °ª DONE°¡ ¸®Åϵ˴ϴ٠.

¹Ýȯ°ª:
»õ·Î¿î À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ. »õ·Î¿î À§°ªÀÌ ÅؽºÆ® ¹üÀ§ÀÇ ¸¶Áö¸·À» Áö³ª°í ÀÖ´Â °æ¿ì´Â DONE

previous

char previous()
¹Ýº¹ÀÚÀÇ À妽º¸¦ 1 ÁÙ¿©, »õ·Î¿î À妽º¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÇöÀçÀÇ À妽º°¡ getBeginIndex()ÀÇ °æ¿ì, À妽º´Â getBeginIndex()ÀΠä º¯ÇÔ¾øÀÌ, °ª DONE°¡ ¸®Åϵ˴ϴ٠.

¹Ýȯ°ª:
»õ·Î¿î À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ. ÇöÀçÀÇ À§°ªÀÌ getBeginIndex()¿¡ µ¿ÀÏÇÑ °æ¿ì´Â DONE

setIndex

char setIndex(int position)
À§°ªÀÌ ÁöÁ¤µÈ ÅؽºÆ®ÀÇ À§Ä¡·Î ¼³Á¤ÇØ, ±× ¹®ÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
position - Å×½ºÆ®³»ÀÇ À§Ä¡. ÀÌ °ªÀº getBeginIndex() ~ getEndIndex()ÀÇ ¹üÀ§³»¿¡ ¾øÀ¸¸é ¾È µÈ´Ù. ¹«È¿ÀÎ °ªÀ» ÁöÁ¤Çϸé, IllegalArgumentException°¡ Throw µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ. ÁöÁ¤µÈ À§°ªÀÌ getEndIndex()¿¡ µ¿ÀÏÇÑ °æ¿ì´Â DONE

getBeginIndex

int getBeginIndex()
ÅؽºÆ®ÀÇ °³½Ã À妽º¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÅؽºÆ®°¡ ½ÃÀ۵Ǵ À§Ä¡ÀÇ À妽º

getEndIndex

int getEndIndex()
ÅؽºÆ®ÀÇ Á¾·á À妽º¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ À妽º´Â ÅؽºÆ®ÀÇ ¸¶Áö¸·ÀÇ ´ÙÀ½ÀÇ ¹®ÀÚÀÇ À妽ºÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÅؽºÆ®³»ÀÇ ¸¶Áö¸· ¹®ÀÚÀÇ ´ÙÀ½ÀÇ À妽º

getIndex

int getIndex()
ÇöÀçÀÇ À妽º¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ À妽º

clone

Object  clone()
¹Ýº¹ÀÚÀÇ º¹»çº»À» ÀÛ¼ºÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¹Ýº¹ÀÚÀÇ Ä«ÇÇ

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.