public interface Appendable
能够被添加 char 序列和值的对象。如果某个类的实例打算接收取自 Formatter
的格式化输出,那么该类必须实现 Appendable 接口。
要添加的字符应该是有效的 Unicode 字符,正如 Unicode Character Representation 中描述的那样。注意,增补字符可能由多个 16 位 char 值组成。
Appendable 对于多线程访问而言没必要是安全的。线程安全由扩展和实现此接口的类负责。
由于此接口可能由具有不同的错误处理风格的现有类实现,所以无法保证错误不会传播给调用者。
方法摘要 | |
---|---|
Appendable |
append(char c) 向此 Appendable 添加指定字符。 |
Appendable |
append(CharSequence csq) 向此 Appendable 添加指定的字符序列。 |
Appendable |
append(CharSequence csq, int start, int end) 向此 Appendable 添加指定字符序列的子序列。 |
方法详细信息 |
---|
Appendable append(CharSequence csq) throws IOException
有时可能没有添加整个序列,这取决于使用哪个类来实现字符序列 csq。例如,如果 csq 是 CharBuffer
的一个实例,则通过缓冲区的位置和限制来定义要添加的子序列。
csq
- 要添加的字符串序列。如果
csq 为
null,则向该 Appendable 添加四个字符
"null"。
IOException
- 如果发生 I/O 错误
Appendable append(CharSequence csq, int start, int end) throws IOException
当 csq 不为 null 时,用 out.append(csq, start, end) 的形式调用此方法与用以下形式调用此方法的行为完全相同:
out.append(csq.subSequence(start, end))
csq
- 子序列将被添加的字符序列。如果
csq 为
null,则添加四个字符
"null",就好像
csq 包含这些字符一样。
start
- 子序列中第一个字符的索引
end
- 紧随子序列中最后一个字符的字符的索引
IndexOutOfBoundsException
- 如果
start 或
end 为负,以及
start 大于
end 或者
end 大于
csq.length()
IOException
- 如果发生 I/O 错误
Appendable append(char c) throws IOException
c
- 要添加的字符
IOException
- 如果发生 I/O 错误