码迷,mamicode.com
首页 > 其他好文 > 详细

今天使用JDK1.8中的ByteBuffer 发现其中基本数据必须要是偶数个的

时间:2016-07-25 16:12:16      阅读:259      评论:0      收藏:0      [点我收藏+]

标签:

private static void symmertricScramble(CharBuffer cb) {
while (cb.hasRemaining()) {
cb.mark();
char c1 = cb.get();
char c2 = cb.get();
cb.reset();
cb.put(c2).put(c1);
}
}

public static void main(String[] args) throws Exception {
//如果这里是奇数个的数据就会抛出BufferUnderflowException
char[] chars = "UsingCharBuffer2".toCharArray();
ByteBuffer bb = ByteBuffer.allocate(chars.length * 2);
CharBuffer cb = bb.asCharBuffer();


cb.put(chars);
// System.out.println("pos:" + cb.position() + " limit:" + cb.limit() + " cap:" + cb.capacity() + " mark:" + cb.mark());
cb.flip();

symmertricScramble(cb);
System.out.println(cb.rewind());
}

今天使用JDK1.8中的ByteBuffer 发现其中基本数据必须要是偶数个的

标签:

原文地址:http://www.cnblogs.com/tianweijiang/p/5703646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!