JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.nio
Ŭ·¡½º CharBuffer

java.lang.Object 
  |
  +--java.nio.Buffer 
        |
        +--java.nio.CharBuffer
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
CharSequence , Comparable

public abstract class CharBuffer
extends Buffer
implements Comparable , CharSequence

char ¹öÆÛÀÔ´Ï´Ù.

ÀÌ Å¬·¡½º´Â char ¹öÆÛ¿¡ ´ëÇÑ Á¶ÀÛÀ» 4 °³ÀÇ Ä«Å×°í¸®·Î ºÐ·ùÇÕ´Ï´Ù.

char ¹öÆÛ´Â ¹öÆÛÀÇ ÄÁÅÙÃ÷¿¡ ¿ë·®À» ÇÒ´çÇÏ´Â ¹æ¹ý (¿ë·®ÀÇ ÇÒ´ç ), ±âÁ¸ÀÇ char ¹è¿­À̳ª ij¸¯ÅÍ ¶óÀÎÀ» ¹öÆÛ¿¡ ·¦ ÇÏ´Â ¹æ¹ý (·¦ ), ±âÁ¸ÀÇ byte ¹öÆÛÀÇ ¡¸ºä¡¹¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ¸·Î ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

byte ¹öÆÛ¿Í °°°Ô, char ¹öÆÛ¿¡µµ¡¸´ÙÀÌ·ºÆ®¡¹¹öÆÛ¿Í ¡¸ºñ´ÙÀÌ·ºÆ®¡¹¹öÆÛ°¡ ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½ºÀÇ wrap ¸Þ¼Òµå·Î ÀÛ¼ºµÈ char ¹öÆÛ´Â ºñ´ÙÀÌ·ºÆ® ¹öÆÛ°¡ µË´Ï´Ù. byte ¹öÆÛÀÇ ºä·Î¼­ ÀÛ¼ºµÈ char ¹öÆÛ´Â byte ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ ´ÙÀÌ·ºÆ® ¹öÆÛ°¡ µË´Ï´Ù. char ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÏÁö ¾î¶³Áö´Â isDirect ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÆÇ´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÀÌ Å¬·¡½º´Â CharSequence ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡, ij¸¯ÅÍ ¼øÂ÷ ¼ø¼­¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ´Â Àå¼ÒÀÌ¸é ¾îµð¿¡¼­¶óµµ, char ¹öÆÛ¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Á¤±Ô Ç¥ÇöÀÇ ÆÐŰÁö java.util.regex ¿¡¼­ÀÇ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù.

ÀÌ Å¬·¡½ºÀÇ ¸Þ¼ÒµåÁß ¹Ýȯ°ªÀ» µ¹·ÁÁÖÁö ¾Ê´Â °ÍÀº ÀÚ½ÅÀ» È£ÃâÇÑ ¹öÆÛÀÇ Á¤º¸¸¦ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀ» ÀÀ¿ëÇØ, ¸Þ¼Òµå È£ÃâÀ» ¿¬¼â½Ãų ¼ö°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½°ú °°Àº ¿¬¼ÓÇÑ ¹®ÀåÀÌ ÀÖ´Ù°í ÇսôÙ.

 cb.put("text/");
 cb.put(subtype);
 cb.put("; charset=");
 cb.put(enc);
À̰͵éÀº ´ÙÀ½ÀÇ ÀϹ®À¸·Î ¿Å°ÜÁý´Ï´Ù.
 cb.put("text/"). put(subtype). put("; charset="). put(enc);

µµÀÔµÈ ¹öÁ¯:
1.4

¸Þ¼ÒµåÀÇ °³¿ä
static CharBuffer allocate (int capacity)
          »õ·Î¿î char ¹öÆÛ¸¦ ÇÒ´çÇÕ´Ï´Ù.
 char[] array ()
          ÇöÀçÀÇ ¹öÆÛ¸¦ º¸Á¶ÇÏ´Â char ¹è¿­À» µ¹·ÁÁÝ´Ï´Ù (¿É¼Ç).
 int arrayOffset ()
          ÇöÀçÀÇ ¹öÆÛÀÇ º¸Á¶ ¹è¿­³»¿¡ ÀÖ´Â ÀÌ ¹öÆÛÀÇ ÃÖÃÊÀÇ ¿ä¼ÒÀÇ ¿ÀÇÁ¼Â(offset)¸¦ µ¹·ÁÁÝ´Ï´Ù (¿É¼Ç).
abstract  CharBuffer asReadOnlyBuffer ()
          ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¸¦ °øÀ¯ÇÏ´Â »õ·Î¿î read Àü¿ë ij¸¯ÅÍ ¶óÀÎ ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 char charAt (int index)
          ÇöÀç À§Ä¡·ÎºÎÅÍÀÇ »ó´ë À§Ä¡¿¡¼­ ³ªÅ¸³»Áö´Â ÁöÁ¤µÈ À妽º À§Ä¡¿¡ Àִ ij¸¯Å͸¦ ÀоîµéÀÔ´Ï´Ù.
abstract  CharBuffer compact ()
          ÇöÀçÀÇ ¹öÆÛ¸¦ ¾ÐÃàÇÕ´Ï´Ù (¿É¼Ç).
 int compareTo (Object  ob)
          ÇöÀçÀÇ ¹öÆÛ¸¦ ´Ù¸¥ ¿ÀºêÁ§Æ®¿Í ºñ±³ÇÕ´Ï´Ù.
abstract  CharBuffer duplicate ()
          ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¸¦ °øÀ¯ÇÏ´Â »õ·Î¿î char ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 boolean equals (Object  ob)
          ÇöÀçÀÇ ¹öÆÛ°¡ ´Ù¸¥ ¿ÀºêÁ§Æ®¿Í µî°¡ÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.
abstract  char get ()
          »ó´ë ¡¸get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.
 CharBuffer get (char[] dst)
          »ó´ë ¡¸Àϰý get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.
 CharBuffer get (char[] dst, int offset, int length)
          »ó´ë ¡¸Àϰý get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.
abstract  char get (int index)
          Àý´ë ¡¸get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.
 boolean hasArray ()
          ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ char ¹è¿­À» ÀÌ¿ëÇÒÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.
 int hashCode ()
          ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀçÀÇ ÇØ½Ã Äڵ带 µ¹·ÁÁÝ´Ï´Ù.
abstract  boolean isDirect ()
          ÇöÀçÀÇ ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.
 int length ()
          ÇöÀçÀÇ char ¹öÆÛÀÇ ¹öÆÛÀåÀ» µ¹·ÁÁÝ´Ï´Ù.
abstract  ByteOrder order ()
          ÇöÀçÀÇ ¹öÆÛÀÇ ¹ÙÀÌÆ® ¼ø¼­¸¦ ÃëµæÇÕ´Ï´Ù.
abstract  CharBuffer put (char c)
          »ó´ë ¡¸put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
 CharBuffer put (char[] src)
          »ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
 CharBuffer put (char[] src, int offset, int length)
          »ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
 CharBuffer put (CharBuffer  src)
          »ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
abstract  CharBuffer put (int index, char c)
          Àý´ë ¡¸put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
 CharBuffer put (String  src)
          »ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
 CharBuffer put (String  src, int start, int end)
          »ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).
abstract  CharBuffer slice ()
          ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷ÀÇ °øÀ¯ÀÇ ¼­ºê ¼øÂ÷ ¼ø¼­¸¦ ÄÁÅÙÃ÷·Î ÇÏ´Â »õ·Î¿î char ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
abstract  CharSequence subSequence (int start, int end)
          ÇöÀçÀÇ ¹öÆÛÀÇ ÁöÁ¤µÈ ¼­ºê ¼øÂ÷ ¼ø¼­ (ÇöÀç À§Ä¡·ÎºÎÅÍÀÇ »ó´ë À§Ä¡)¸¦ ³ªÅ¸³»´Â »õ·Î¿î char ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 String toString ()
          ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Å͸¦ Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù.
static CharBuffer wrap (char[] array)
          char ¹è¿­À» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.
static CharBuffer wrap (char[] array, int offset, int length)
          char ¹è¿­À» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.
static CharBuffer wrap (CharSequence  csq)
          Ä³¸¯ÅÍ ¶óÀÎÀ» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.
static CharBuffer wrap (CharSequence  csq, int start, int end)
          Ä³¸¯ÅÍ ¼øÂ÷ ¼ø¼­¸¦ ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.
 
Ŭ·¡½º java.nio. Buffer ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
capacity , clear , flip , hasRemaining , isReadOnly , limit , limit , mark , position , position , remaining , reset , rewind
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

¸Þ¼ÒµåÀÇ »ó¼¼

allocate

public static CharBuffer  allocate(int capacity)
»õ·Î¿î char ¹öÆÛ¸¦ ÇÒ´çÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ À§Ä¡´Â 0, ¸®¹ÔÆ®´Â ¿ë·®°ú °°Àº °ªÀÌ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. ÀÌ ¹öÆÛ´Âº¸Á¶ ¹è¿­ À» ÀÌ¿ëÇÏ°Ô µÇ¾î ÀÖ¾î ±×¹è¿­ ¿ÀÇÁ¼Â(offset) ´Â 0 ÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
capacity - »õ·Î¿î ¹öÆÛÀÇ ¿ë·® (ij¸¯Åͼö)
¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ

wrap

public static CharBuffer  wrap(char[] array,
                              int offset,
                              int length)
char ¹è¿­À» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛ´Â ÁöÁ¤µÈ char ¹è¿­À» ÀÌ¿ëÇÕ´Ï´Ù. ¹öÆÛ·Î º¯°æÀ» ´õÇϸé(ÀÚ) char ¹è¿­ÀÌ º¯°æµÇ¾î char ¹è¿­·Î º¯°æÀ» ´õÇϸé(ÀÚ) ¹öÆÛ°¡ º¯°æµË´Ï´Ù. »õ·Î¿î ¹öÆÛÀÇ ¿ë·®Àº array.length, À§Ä¡´Â offset, ¸®¹ÔÆ®´Â offset + length °¡ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. ÁöÁ¤µÈ ¹è¿­À̺¸Á¶ ¹è¿­ ÀÌ µÇ¾î, ±×{@link #arrayOffset ¹è¿­ ¿ÀÇÁ¼Â(offset)´Â 0 ÀÌ µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
array - »õ·Î¿î ¹öÆÛ¸¦ º¸Á¶ÇÏ´Â ¹è¿­
offset - »ç¿ëÇÏ´Â ¼­ºê ¹è¿­ÀÇ ¿ÀÇÁ¼Â(offset). array.length ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù. »õ·Î¿î ¹öÆÛÀÇ À§Ä¡´Â ÀÌ °ªÀ¸·Î ¼³Á¤µÇ´Â
length - »ç¿ëÇÏ´Â ¼­ºê ¹è¿­ÀÇ ¿ÀÇÁ¼Â(offset). array.length - offset ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù. »õ·Î¿î ¹öÆÛÀÇ ¸®¹ÔÆ®´Â offset + length ·Î ¼³Á¤µÈ´Ù
¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ
¿¹¿Ü:
IndexOutOfBoundsException - offset ÆÄ¶ó¹ÌÅÍ¿Í length ÆÄ¶ó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì

wrap

public static CharBuffer  wrap(char[] array)
char ¹è¿­À» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛ´Â ÁöÁ¤µÈ char ¹è¿­À» ÀÌ¿ëÇÕ´Ï´Ù. ¹öÆÛ·Î º¯°æÀ» ´õÇϸé(ÀÚ) char ¹è¿­ÀÌ º¯°æµÇ¾î char ¹è¿­·Î º¯°æÀ» ´õÇϸé(ÀÚ) ¹öÆÛ°¡ º¯°æµË´Ï´Ù. »õ·Î¿î ¹öÆÛÀÇ ¿ë·®°ú ¸®¹ÔÆ®´Â array.length, À§Ä¡´Â 0 ÀÌ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. ÁöÁ¤µÈ ¹è¿­À̺¸Á¶ ¹è¿­ ÀÌ µÇ¾î, ±×{@link #arrayOffset ¹è¿­ ¿ÀÇÁ¼Â(offset)´Â 0 ÀÌ µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
array - ÇöÀçÀÇ ¹öÆÛ¸¦ º¸Á¶ÇÏ´Â ¹è¿­
¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ

wrap

public static CharBuffer  wrap(CharSequence  csq,
                              int start,
                              int end)
ij¸¯ÅÍ ¼øÂ÷ ¼ø¼­¸¦ ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.

»õ·Î¿î read Àü¿ë ¹öÆÛÀÇ ÄÁÅÙÃ÷´Â ÁöÁ¤µÈ ij¸¯ÅÍ ¼øÂ÷ ¼ø¼­ÀÇ ÄÁÅÙÃ÷°¡ µË´Ï´Ù. ¹öÆÛÀÇ ¿ë·®Àº csq.length(), À§Ä¡´Â start, ¸®¹ÔÆ®´Â end °¡ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
csq - ÀÛ¼ºµÇ´Â »õ·Î¿î char ¹öÆÛÀÇ ¹ÙÅÁÀ¸·Î µÇ´Â ij¸¯ÅÍ ¼øÂ÷ ¼ø¼­
start - »ç¿ëµÇ´Â ÃÖÃÊÀÇ Ä³¸¯Å͸¦ ³ªÅ¸³»´Â À妽º. csq.length() ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù. »õ·Î¿î ¹öÆÛÀÇ À§Ä¡´Â ÀÌ °ªÀ¸·Î ¼³Á¤µÇ´Â
end - »ç¿ëµÇ´Â ¸¶Áö¸· ij¸¯ÅÍÀÇ ´ÙÀ½ÀÇ Ä³¸¯Å͸¦ ³ªÅ¸³»´Â À妽º. start ÀÌ»ó csq.length() ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù. »õ·Î¿î ¹öÆÛÀÇ ¸®¹ÔÆ®´Â ÀÌ °ªÀ¸·Î ¼³Á¤µÈ´Ù
¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ
¿¹¿Ü:
IndexOutOfBoundsException - start ÆÄ¶ó¹ÌÅÍ¿Í end ÆÄ¶ó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì

wrap

public static CharBuffer  wrap(CharSequence  csq)
ij¸¯ÅÍ ¶óÀÎÀ» ¹öÆÛ¿¡ ·¦ ÇÕ´Ï´Ù.

»õ·Î¿î read Àü¿ë ¹öÆÛÀÇ ÄÁÅÙÃ÷´Â ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÇ ÄÁÅÙÃ÷°¡ µË´Ï´Ù. »õ·Î¿î ¹öÆÛÀÇ ¿ë·®°ú ¸®¹ÔÆ®´Â csq.length(), À§Ä¡´Â 0 ÀÌ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
csq - ÀÛ¼ºµÇ´Â »õ·Î¿î char ¹öÆÛÀÇ ¹ÙÅÁÀ¸·Î µÇ´Â ij¸¯ÅÍ ¼øÂ÷ ¼ø¼­
¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ

slice

public abstract CharBuffer  slice()
ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷ÀÇ °øÀ¯ÀÇ ¼­ºê ¼øÂ÷ ¼ø¼­¸¦ ÄÁÅÙÃ÷·Î ÇÏ´Â »õ·Î¿î char ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ ÄÁÅÙÃ÷´Â ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡·ÎºÎÅÍ ½ÃÀ۵˴ϴÙ. ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), ±× ³»¿ëÀÌ »õ·Î¿î ¹öÆÛ¿¡ ¹Ý¿µµË´Ï´Ù. »õ·Î¿î ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), ±× ³»¿ëÀÌ ÇöÀçÀÇ ¹öÆÛ¿¡ ¹Ý¿µµË´Ï´Ù. 2 °³ÀÇ ¹öÆÛÀÇ À§Ä¡, ¸®¹ÔÆ®, ¸¶Å©ÀÇ °ªÀº °¢°¢ ´Ù¸¨´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ À§Ä¡´Â 0, ¿ë·®°ú ¸®¹ÔÆ®´Â ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ µË´Ï´Ù. ¸¶Å©´Â Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. »õ·Î¿î ¹öÆÛ´Â ÇöÀçÀÇ ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ ´ÙÀÌ·ºÆ® ¹öÆÛ°¡ µË´Ï´Ù. ¶Ç, ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ read Àü¿ë ¹öÆÛ°¡ µË´Ï´Ù.

¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ

duplicate

public abstract CharBuffer  duplicate()
ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¸¦ °øÀ¯ÇÏ´Â »õ·Î¿î char ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ ÄÁÅÙÃ÷´Â ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¿Í °°°Ô µË´Ï´Ù. ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), ±× ³»¿ëÀÌ »õ·Î¿î ¹öÆÛ¿¡ ¹Ý¿µµË´Ï´Ù. »õ·Î¿î ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), ±× ³»¿ëÀÌ ÇöÀçÀÇ ¹öÆÛ¿¡ ¹Ý¿µµË´Ï´Ù. 2 °³ÀÇ ¹öÆÛÀÇ À§Ä¡, ¸®¹ÔÆ®, ¸¶Å©ÀÇ °ªÀº °¢°¢ ´Ù¸¨´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ ¿ë·®, ¸®¹ÔÆ®, À§Ä¡, ¸¶Å©ÀÇ °ªÀº ÇöÀçÀÇ ¹öÆÛÀÇ ´ëÀÀÇÏ´Â °ª°ú °°°Ô µË´Ï´Ù. »õ·Î¿î ¹öÆÛ´Â ÇöÀçÀÇ ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ ´ÙÀÌ·ºÆ® ¹öÆÛ°¡ µË´Ï´Ù. ¶Ç, ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ read Àü¿ë ¹öÆÛ°¡ µË´Ï´Ù.

¹Ýȯ°ª:
»õ·Î¿î char ¹öÆÛ

asReadOnlyBuffer

public abstract CharBuffer  asReadOnlyBuffer()
ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¸¦ °øÀ¯ÇÏ´Â »õ·Î¿î read Àü¿ë ij¸¯ÅÍ ¶óÀÎ ¹öÆÛ¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ ÄÁÅÙÃ÷´Â ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷¿Í °°°Ô µË´Ï´Ù. ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), ±× ³»¿ëÀÌ »õ·Î¿î ¹öÆÛ¿¡ ¹Ý¿µµË´Ï´Ù. ±×·¯³ª, »õ·Î¿î ¹öÆÛ ÀÚü´Â Àоîµé¿© Àü¿ëÀ̸ç, ±× °øÀ¯ ÄÁÅÙÃ÷¸¦ º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù. 2 °³ÀÇ ¹öÆÛÀÇ À§Ä¡, ¸®¹ÔÆ®, ¸¶Å©ÀÇ °ªÀº °¢°¢ ´Ù¸¨´Ï´Ù.

»õ·Î¿î ¹öÆÛÀÇ ¿ë·®, ¸®¹ÔÆ®, À§Ä¡, ¸¶Å©ÀÇ °ªÀº ÇöÀçÀÇ ¹öÆÛÀÇ ´ëÀÀÇÏ´Â °ª°ú °°°Ô µË´Ï´Ù.

ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ëÀÇ °æ¿ì, ÀÌ ¸Þ¼ÒµåÀÇ µ¿ÀÛÀº(duplicate) ¸Þ¼Òµå¿Í ¿ÏÀüÈ÷ °°°Ô µË´Ï´Ù.

¹Ýȯ°ª:
»õ·Î¿î read Àü¿ë ij¸¯ÅÍ ¶óÀÎ ¹öÆÛ

get

public abstract char get()
»ó´ë ¡¸get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù. ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡ÀÇ Ä³¸¯Å͸¦ Àоîµé¿©, À§Ä¡¸¦ Áõ°¡ÇÕ´Ï´Ù.

¹Ýȯ°ª:
¹öÆÛÀÇ ÇöÀç À§Ä¡ÀÇ Ä³¸¯ÅÍ
¿¹¿Ü:
BufferUnderflowException - ¹öÆÛÀÇ ÇöÀç À§Ä¡°¡ ¸®¹ÔÆ® ÀÌ»óÀÎ °æ¿ì

put

public abstract CharBuffer  put(char c)
»ó´ë ¡¸put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡·Î ÁöÁ¤µÈ ij¸¯Å͸¦ ±âÀÔÇØ, À§Ä¡¸¦ Áõ°¡ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
c - ±âÀÔÇØÁö´Â ij¸¯ÅÍ
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡°¡ ¸®¹ÔÆ® ÀÌ»óÀÎ °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

get

public abstract char get(int index)
Àý´ë ¡¸get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù. ÁöÁ¤µÈ À妽º À§Ä¡ÀÇ Ä³¸¯Å͸¦ ÀоîµéÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
index - ij¸¯ÅÍÀÇ read À§Ä¡¸¦ ³ªÅ¸³»´Â À妽º
¹Ýȯ°ª:
ÁöÁ¤µÈ À妽º À§Ä¡ÀÇ Ä³¸¯ÅÍ
¿¹¿Ü:
IndexOutOfBoundsException - index °¡ ºÎÀÇ ¼öÀÎ °æ¿ì, ¶Ç´Â ¹öÆÛÀÇ ¸®¹ÔÆ® ÀÌ»óÀÎ °æ¿ì

put

public abstract CharBuffer  put(int index,
                               char c)
Àý´ë ¡¸put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÇöÀçÀÇ ¹öÆÛÀÇ ÁöÁ¤µÈ À妽º À§Ä¡·Î ÁöÁ¤µÈ ij¸¯Å͸¦ ±âÀÔÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
index - ij¸¯ÅÍÀÇ ±âÀÔó¸¦ ³ªÅ¸³»´Â À妽º
c - ±âÀÔÇØÁö´Â ij¸¯ÅÍ
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
IndexOutOfBoundsException - index °¡ ºÎÀÇ ¼öÀÎ °æ¿ì, ¶Ç´Â ¹öÆÛÀÇ ¸®¹ÔÆ® ÀÌ»óÀÎ °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

get

public CharBuffer  get(char[] dst,
                      int offset,
                      int length)
»ó´ë ¡¸Àϰý get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.

ÀÌ ¸Þ¼Òµå´Â ÇöÀçÀÇ ¹öÆÛ·ÎºÎÅÍ ÁöÁ¤µÈ ¹è¿­¿¡ ij¸¯Å͸¦ Àü¼Û ÇÕ´Ï´Ù. ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ ¿ä±¸¿¡ ¸ø ¹ÌÄ£ °æ¿ì (length > remaining()), ij¸¯ÅÍ´Â ÀÏÀý Àü¼Û µÇÁö ¾Ê°í BufferUnderflowException °¡ ½½·Î¿ì µË´Ï´Ù.

±× ÀÌ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡·ÎºÎÅÍ length ij¸¯ÅͰ¡ ÁöÁ¤µÈ ¹è¿­ÀÇ ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡¿¡ Ä«ÇÇÇÕ´Ï´Ù. ±×¶§¸¶´Ù, ÇöÀçÀÇ ¹öÆÛÀÇ À§Ä¡°¡ length µÎ°³Áõ°¡ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ src.get(dst,  off,  len) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ ·çÇÁ¿Í ¿ÏÀüÈ÷ °°Àº °á°ú°¡ µË´Ï´Ù.

     for (int i = off; i < off + len; i++)
         dst[i] = src.get(); 
´Ù¸¸, ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ ÃæºÐÇÑ °ÍÀ» ÃÖÃÊ·Î È®ÀÎÇÏ´Â µ¿ÀÛÀº ÀÌ ¸Þ¼Òµå °íÀ¯ÇÕ´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼Òµå ÂÊÀÌ ·çÇÁº¸´Ù È¿À²ÀûÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
dst - ij¸¯ÅÍÀÇ ±âÀÔó°¡ µÇ´Â ¹è¿­
offset - ¸¶Áö¸· ij¸¯ÅÍÀÇ ±âÀÔó°¡ µÇ´Â ¹è¿­³»ÀÇ ¿ÀÇÁ¼Â(offset). dst.length ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÇ´Â
length - ÁöÁ¤µÈ ¹è¿­¿¡ ±âÀÔÇØÁö´Â ÃÖ´ë ij¸¯Åͼö. dst.length - offset ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferUnderflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ length º¸´Ù ÀûÀº °æ¿ì
IndexOutOfBoundsException - offset ÆÄ¶ó¹ÌÅÍ¿Í length ÆÄ¶ó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì

get

public CharBuffer  get(char[] dst)
»ó´ë ¡¸Àϰý get¡¹¸Þ¼ÒµåÀÔ´Ï´Ù.

ÀÌ ¸Þ¼Òµå´Â ÇöÀçÀÇ ¹öÆÛ·ÎºÎÅÍ ÁöÁ¤µÈ ¹è¿­¿¡ ij¸¯Å͸¦ Àü¼Û ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ src.get(a) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ È£Ãâ°ú °°Àº °á°ú°¡ µË´Ï´Ù.

     src.get(a, 0, a.length) 

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferUnderflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ length º¸´Ù ÀûÀº °æ¿ì

put

public CharBuffer  put(CharBuffer  src)
»ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ¼Ò½º ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Å͸¦ ÇöÀçÀÇ ¹öÆÛ¿¡ Àü¼Û ÇÕ´Ï´Ù. ¼Ò½º ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼö°¡ ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼöº¸´Ù ¸¹Àº °æ¿ì (src.remaining() > remaining()), ij¸¯ÅÍ´Â ÀÏÀý Àü¼Û µÇÁö ¾Ê°í BufferOverflowException °¡ ½½·Î¿ì µË´Ï´Ù.

±× ÀÌ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ¹öÆÛÀÇ ÇöÀç À§Ä¡·ÎºÎÅÍ ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡¿¡ n = src.remaining() ij¸¯Å͸¦ Ä«ÇÇÇÕ´Ï´Ù. ±×¶§¸¶´Ù, ¾çÂÊ ¸ðµÎÀÇ ¹öÆÛÀÇ À§Ä¡°¡ n µÎ°³Áõ°¡ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ dst.put(src) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ ·çÇÁ¿Í ¿ÏÀüÈ÷ °°Àº °á°ú°¡ µË´Ï´Ù.

     while (src.hasRemaining())
         dst.put(src.get()); 
´Ù¸¸, ÇöÀçÀÇ ¹öÆÛ³»¿¡ ÃæºÐÇÑ ¿ë·®ÀÌ ÀÖ´Â °ÍÀ» ÃÖÃÊ·Î È®ÀÎÇÏ´Â µ¿ÀÛÀº ÀÌ ¸Þ¼Òµå¿¡ °íÀ¯ÇÕ´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼Òµå ÂÊÀÌ ·çÇÁº¸´Ù Âß È¿À²ÀûÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
src - ij¸¯ÅͰ¡ ÀÐÈ÷´Â ¼Ò½º ¹öÆÛ (ÇöÀçÀÇ ¹öÆÛ ÀÌ¿Ü)
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛ¿¡, ¼Ò½º ¹öÆÛÀÇ Ä³¸¯Å͸¦ ÀúÀå °¡´ÉÇÑ ÇÑÀÇ ¿ë·®ÀÌ ¾ø´Â °æ¿ì
IllegalArgumentException - ¼Ò½º ¹öÆÛ·Î¼­ ÇöÀçÀÇ ¹öÆÛ¸¦ ÁöÁ¤ÇßÀ» °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

put

public CharBuffer  put(char[] src,
                      int offset,
                      int length)
»ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ¼Ò½º ¹è¿­·ÎºÎÅÍ ÇöÀçÀÇ ¹öÆÛ¿¡ ij¸¯Å͸¦ Àü¼Û ÇÕ´Ï´Ù. ¹è¿­·ÎºÎÅÍ Ä«ÇÇÇϴ ij¸¯Åͼö°¡ ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼöº¸´Ù ¸¹Àº °æ¿ì (length > remaining()), ij¸¯ÅÍ´Â ÀÏÀý Àü¼Û µÇÁö ¾Ê°í BufferOverflowException °¡ ½½·Î¿ì µË´Ï´Ù.

±× ÀÌ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ¹è¿­ÀÇ ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡·ÎºÎÅÍ ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡¿¡ length ij¸¯Å͸¦ Ä«ÇÇÇÕ´Ï´Ù. ±×¶§¸¶´Ù, ÇöÀçÀÇ ¹öÆÛÀÇ À§Ä¡°¡ length µÎ°³Áõ°¡ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ dst.put(src,  off,  len) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ ·çÇÁ¿Í ¿ÏÀüÈ÷ °°Àº °á°ú°¡ µË´Ï´Ù.

     for (int i = off; i < off + len; i++)
         dst.put(a[i]); 
´Ù¸¸, ÇöÀçÀÇ ¹öÆÛ³»¿¡ ÃæºÐÇÑ ¿ë·®ÀÌ ÀÖ´Â °ÍÀ» ÃÖÃÊ·Î È®ÀÎÇÏ´Â µ¿ÀÛÀº ÀÌ ¸Þ¼Òµå¿¡ °íÀ¯ÇÕ´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼Òµå ÂÊÀÌ ·çÇÁº¸´Ù Âß È¿À²ÀûÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
offset - ÃÖÃÊÀÇ Ä³¸¯ÅͰ¡ ÀÐÈ÷´Â ¹è¿­³»ÀÇ ¿ÀÇÁ¼Â(offset). array.length ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÇ´Â
length - ÁöÁ¤µÈ ¹è¿­·ÎºÎÅÍ ÀоÁö´Â ij¸¯Åͼö. array.length - offset ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¿ë·®ÀÌ ºÎÁ·ÇÑ °æ¿ì
IndexOutOfBoundsException - offset ÆÄ¶ó¹ÌÅÍ¿Í length ÆÄ¶ó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

put

public final CharBuffer  put(char[] src)
»ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÀÌ ¸Þ¼Òµå´Â ¼Ò½º°¡ µÇ´Â ÁöÁ¤µÈ char ¹è¿­ÀÇ ÄÁÅÙÃ÷ Àüü¸¦ ÇöÀçÀÇ ¹öÆÛ¿¡ Àü¼Û ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ dst.put(a) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ È£Ãâ°ú °°Àº °á°ú°¡ µË´Ï´Ù.

     dst.put(a, 0, a.length) 

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¿ë·®ÀÌ ºÎÁ·ÇÑ °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

put

public CharBuffer  put(String  src,
                      int start,
                      int end)
»ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀ¸·ÎºÎÅÍ ÇöÀçÀÇ ¹öÆÛ¿¡ ij¸¯Å͸¦ Àü¼Û ÇÕ´Ï´Ù. ij¸¯ÅÍ ¶óÀÎÀ¸·ÎºÎÅÍ Ä«ÇÇÇϴ ij¸¯Åͼö°¡ ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ Àִ ij¸¯Åͼöº¸´Ù ¸¹Àº °æ¿ì (end - start > remaining()), ij¸¯ÅÍ´Â ÀÏÀý Àü¼Û µÇÁö ¾Ê°í BufferOverflowException °¡ ½½·Î¿ì µË´Ï´Ù.

±× ÀÌ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀÎÀÇ start À妽º·ÎºÎÅÍ ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀç À§Ä¡¿¡ n = end - start ij¸¯Å͸¦ Ä«ÇÇÇÕ´Ï´Ù. ±×¶§¸¶´Ù, ÇöÀçÀÇ ¹öÆÛÀÇ À§Ä¡°¡ n µÎ°³Áõ°¡ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ dst.put(src,  start,  end) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ ·çÇÁ¿Í ¿ÏÀüÈ÷ °°Àº °á°ú°¡ µË´Ï´Ù.

     for (int i = start; i < end; i++)
         dst.put(src.charAt(i)); 
´Ù¸¸, ÇöÀçÀÇ ¹öÆÛ³»¿¡ ÃæºÐÇÑ ¿ë·®ÀÌ ÀÖ´Â °ÍÀ» ÃÖÃÊ·Î È®ÀÎÇÏ´Â µ¿ÀÛÀº ÀÌ ¸Þ¼Òµå¿¡ °íÀ¯ÇÕ´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼Òµå ÂÊÀÌ ·çÇÁº¸´Ù Âß È¿À²ÀûÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
start - ÃÖÃÊÀÇ Ä³¸¯ÅͰ¡ ÀÐÈ÷´Â ij¸¯ÅÍ ¶óÀγ»ÀÇ ¿ÀÇÁ¼Â(offset). string.length ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÇ´Â
end - ÃÖÃÊÀÇ Ä³¸¯ÅͰ¡ ÀÐÈ÷´Â ij¸¯ÅÍ ¶óÀγ»ÀÇ ¿ÀÇÁ¼Â(offset) + 1. string.length ÀÌÇÏÀÇ Á¤ÀÇ ¼ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¿ë·®ÀÌ ºÎÁ·ÇÑ °æ¿ì
IndexOutOfBoundsException - start ÆÄ¶ó¹ÌÅÍ¿Í end ÆÄ¶ó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

put

public final CharBuffer  put(String  src)
»ó´ë ¡¸Àϰý put¡¹¸Þ¼ÒµåÀÔ´Ï´Ù (¿É¼Ç).

ÀÌ ¸Þ¼Òµå´Â ÁöÁ¤µÈ ¼Ò½º ij¸¯ÅÍ ¶óÀÎÀÇ ÄÁÅÙÃ÷ Àüü¸¦ ÇöÀçÀÇ ¹öÆÛ¿¡ Àü¼Û ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ dst.put(s) ÀÇ Çü½Ä¿¡¼­ È£ÃâÇϸé(ÀÚ), ÀÌÇÏÀÇ È£Ãâ°ú °°Àº °á°ú°¡ µË´Ï´Ù.

     dst.put(s, 0, s.length()) 

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
BufferOverflowException - ÇöÀçÀÇ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¿ë·®ÀÌ ºÎÁ·ÇÑ °æ¿ì
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

hasArray

public final boolean hasArray()
ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ char ¹è¿­À» ÀÌ¿ëÇÒÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.

ÀÌ ¸Þ¼ÒµåÀÇ ¹Ýȯ°ªÀÌ true À̸é,array ¸Þ¼Òµå¿Í arrayOffset ¸Þ¼Òµå¸¦ ¾ÈÀüÇÏ°Ô È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ°¡ ¹è¿­À» ÀÌ¿ëÇϰí ÀÖ¾î, read Àü¿ëÀÌ ¾Æ´Ñ °æ¿ì¿¡ ÇÑÇØ true

array

public final char[] array()
ÇöÀçÀÇ ¹öÆÛ¸¦ º¸Á¶ÇÏ´Â char ¹è¿­À» µ¹·ÁÁÝ´Ï´Ù (¿É¼Ç).

ÇöÀçÀÇ ¹öÆÛÀÇ ÄÁÅÙÃ÷·Î º¯°æÀ» ´õÇϸé(ÀÚ), µ¹·ÁÁÖ¾îÁö´Â ¹è¿­ÀÇ ÄÁÅÙÃ÷µµ º¯°æµË´Ï´Ù. ±× ¿ªµµ °°½À´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϱâ Àü¿¡ hasArray ¸Þ¼Òµå¸¦ È£ÃâÇØ, ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ º¸Á¶ ¹è¿­À» °¡Áö°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ¸¦ º¸Á¶ÇÏ´Â ¹è¿­
¿¹¿Ü:
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ ¹è¿­À» ÀÌ¿ëÇØ, °Ô´Ù°¡ Àоîµé¿© Àü¿ëÀÎ °æ¿ì
UnsupportedOperationException - ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ ¹è¿­À» ÀÌ¿ëÇÏÁö ¾Ê´Â °æ¿ì

arrayOffset

public final int arrayOffset()
ÇöÀçÀÇ ¹öÆÛÀÇ º¸Á¶ ¹è¿­³»¿¡ ÀÖ´Â ÀÌ ¹öÆÛÀÇ ÃÖÃÊÀÇ ¿ä¼ÒÀÇ ¿ÀÇÁ¼Â(offset)¸¦ µ¹·ÁÁÝ´Ï´Ù (¿É¼Ç).

ÇöÀçÀÇ ¹öÆÛ°¡ ¹è¿­À» ÀÌ¿ëÇϰí ÀÖÀ¸¸é, ±× À§Ä¡ p °¡ ¹è¿­ÀÇ À妽º p + arrayOffset() ¿Í ÀÏÄ¡ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϱâ Àü¿¡ hasArray ¸Þ¼Òµå¸¦ È£ÃâÇØ, ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ º¸Á¶ ¹è¿­À» °¡Áö°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛÀÇ ¹è¿­³»¿¡ ÀÖ´Â ÀÌ ¹öÆÛÀÇ ÃÖÃÊÀÇ ¿ä¼ÒÀÇ ¿ÀÇÁ¼Â(offset)
¿¹¿Ü:
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ ¹è¿­À» ÀÌ¿ëÇØ, °Ô´Ù°¡ Àоîµé¿© Àü¿ëÀÎ °æ¿ì
UnsupportedOperationException - ÇöÀçÀÇ ¹öÆÛ°¡ ¾×¼¼½º °¡´ÉÇÑ ¹è¿­À» ÀÌ¿ëÇÏÁö ¾Ê´Â °æ¿ì

compact

public abstract CharBuffer  compact()
ÇöÀçÀÇ ¹öÆÛ¸¦ ¾ÐÃàÇÕ´Ï´Ù (¿É¼Ç).

¹öÆÛÀÇ ÇöÀç À§Ä¡·ÎºÎÅÍ ¸®¹ÔÆ®±îÁöÀÇ »çÀÌ¿¡ ij¸¯ÅͰ¡ Á¸ÀçÇÏ´Â °æ¿ì, À̰͵éÀ» ¹öÆÛÀÇ ¼±µÎ¿¡ Ä«ÇÇÇÕ´Ï´Ù. Áï, À妽º À§Ä¡ p = position() ÀÇ Ä³¸¯ÅͰ¡ À妽º 0 ¿¡ Ä«ÇǵǾî À妽º À§Ä¡ p + 1 ÀÇ Ä³¸¯ÅͰ¡ À妽º 1 ¿¡ Ä«Çǵȴٰí ÇÏ´Â °ÍÀÔ´Ï´Ù. À妽º À§Ä¡ limit() - 1 ÀÇ Ä³¸¯ÅͰ¡ À妽º n = limit() - 1 - p ¿¡ Ä«ÇÇµÉ ¶§±îÁö °°Àº 󸮰¡ ¹Ýº¹ÇØÁý´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î ¹öÆÛÀÇ À§Ä¡´Â n ·Î ¼³Á¤µÇ¾î ¸®¹ÔÆ®´Â ¿ë·®ÀÇ °ª°ú µ¿ÀÏÇØÁý´Ï´Ù. ¸¶Å©´Â ÆÄ±âµË´Ï´Ù.

¹öÆÛÀÇ À§Ä¡´Â 0 Àº ¾Æ´Ï°í, Ä«ÇǵǴ ij¸¯Åͼö·Î µ¿ÀÏÇØÁý´Ï´Ù. µû¶ó¼­, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÑ µÚ, °ð¹Ù·Î ´Ù¸¥ »ó´ë ¡¸put¡¹¸Þ¼Òµå¸¦ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ
¿¹¿Ü:
ReadOnlyBufferException - ÇöÀçÀÇ ¹öÆÛ°¡ Àоîµé¿© Àü¿ë ¹öÆÛÀÎ °æ¿ì

isDirect

public abstract boolean isDirect()
ÇöÀçÀÇ ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹öÆÛ°¡ ´ÙÀÌ·ºÆ® ¹öÆÛÀÎ °æ¿ì¿¡ ÇÑÇØ true

hashCode

public int hashCode()
ÇöÀçÀÇ ¹öÆÛÀÇ ÇöÀçÀÇ ÇØ½Ã Äڵ带 µ¹·ÁÁÝ´Ï´Ù.

char ¹öÆÛÀÇ ÇØ½Ã ÄÚµå´Â ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¿ä¼Ò, Áï position() ~ limit() - 1 ÀÇ ¿ä¼ÒÀÎ ¸¸Å­ ÀÇÁ¸ÇÕ´Ï´Ù.

¹öÆÛÀÇ ÇØ½Ã ÄÚµå´Â ÄÁÅÙÃ÷ ÀÇÁ¸ÇüÀÔ´Ï´Ù. ÇâÈÄ ¹öÆÛÀÇ ÄÁÅÙÃ÷°¡ º¯°æµÇÁö ¾Ê´Â °ÍÀÌ ºÐ¸íÇÏÁö ¾ÊÀº ÇÑ, ¹öÆÛ¸¦ ÇØ½Ã MAP ±× ¿ÜÀÇ µ¥ÀÌÅÍ ±¸Á¶ÀÇ Å°·Î¼­ »ç¿ëÇÏ´Â °ÍÀº ÇÇÇØ ÁÖ¼¼¿ä.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ hashCode