Module java.base
Package java.lang

Interface Appendable

所有已知的实现类:
BufferedWriter, CharArrayWriter, CharBuffer, FileWriter, FilterWriter, LogStream, OutputStreamWriter, PipedWriter, PrintStream, PrintWriter, StringBuffer, StringBuilder, StringWriter, Writer

public interface Appendable
一个可以附加char序列和值的对象。任何打算接收来自Formatter格式化输出的实例都必须实现Appendable接口。

要附加的字符应该是有效的Unicode字符,如Unicode字符表示中所述。请注意,补充字符可能由多个16位char值组成。

Appendable不一定适用于多线程访问。线程安全是扩展和实现此接口的类的责任。

由于此接口可能由具有不同错误处理样式的现有类实现,因此不能保证错误会传播给调用者。

自Java版本:
1.5
  • Method Summary

    Modifier and Type
    Method
    Description
    append(char c)
    将指定的字符附加到此Appendable
    将指定的字符序列附加到此Appendable
    append(CharSequence csq, int start, int end)
    将指定字符序列的子序列附加到此Appendable
  • Method Details

    • append

      Appendable append(CharSequence csq) throws IOException
      将指定的字符序列附加到此Appendable

      根据实现字符序列csq的类的不同,可能不会附加整个序列。例如,如果csq是一个CharBuffer,则要附加的子序列由缓冲区的位置和限制定义。

      参数:
      csq - 要附加的字符序列。如果csqnull,则将四个字符"null"附加到此Appendable。
      返回:
      对此Appendable的引用
      抛出:
      IOException - 如果发生I/O错误
    • append

      Appendable append(CharSequence csq, int start, int end) throws IOException
      将指定字符序列的子序列附加到此Appendable

      csq不为null时,以out.append(csq, start, end)形式调用此方法的行为与调用

           out.append(csq.subSequence(start, end)) 
      相同。
      参数:
      csq - 要附加子序列的字符序列。如果csqnull,则将字符附加为如果csq包含四个字符"null"
      start - 子序列中第一个字符的索引
      end - 子序列中最后一个字符之后的字符的索引
      返回:
      对此Appendable的引用
      抛出:
      IndexOutOfBoundsException - 如果startend为负,start大于end,或end大于csq.length()
      IOException - 如果发生I/O错误
    • append

      Appendable append(char c) throws IOException
      将指定的字符附加到此Appendable
      参数:
      c - 要附加的字符
      返回:
      对此Appendable的引用
      抛出:
      IOException - 如果发生I/O错误