Java NIO 中的 ByteBuffer 和 CharBuffer 有啥区别?
Posted
技术标签:
【中文标题】Java NIO 中的 ByteBuffer 和 CharBuffer 有啥区别?【英文标题】:What is the difference between ByteBuffer and CharBuffer in Java NIO?Java NIO 中的 ByteBuffer 和 CharBuffer 有什么区别? 【发布时间】:2010-11-08 07:49:58 【问题描述】:如果是 java.nio 包,ByteBuffer 和 CharBuffer 有什么区别。和 byte 和 char 的区别一样吗?
【问题讨论】:
【参考方案1】:大多数情况下,是的 - 但ByteBuffer
s 也有将ByteBuffer
视为其他类型的缓冲区(例如asDoubleBuffer
)以及将其他原始类型放入缓冲区(例如putLong
)的操作。
CharBuffer
还实现了Appendable
和CharSequence
,使其更易于用于文本操作。
【讨论】:
【参考方案2】:你可以这样看。 ByteBuffer 是(8 位)byte
值的缓冲区,而 CharBuffer 保存(16 位)chars
。
【讨论】:
以上是关于Java NIO 中的 ByteBuffer 和 CharBuffer 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
NIO中的heap Buffer和direct Buffer区别
直接 java.nio.ByteBuffer 与 Java 数组性能测试
java.nio.ByteBuffer.array(ByteBuffer.java:959) 处的 java.lang.UnsupportedOperationException