import java.nio.*;
import static net.mindview.util.Print.*;public class GetData {
private static final int BSIZE = 1024;
public static void main(String[] args) {
ByteBuffer bb = ByteBuffer.allocate(BSIZE);
int i = 0;
while(i++ < bb.limit())
if(bb.get() != 0)
print("nonzero");
print("i = " + i); //问题1:这里输出 i = 1025 为什么? 不是应该 1023的嘛~~(0 - 1023)
bb.rewind();
bb.asCharBuffer().put("Howdy!");
char c;
while((c = bb.getChar()) != 0)
printnb(c + " ");
print();
bb.rewind(); //问题2:这里的 .rewind()方法有什么作用?和 clear()有什么区别?
bb.asShortBuffer().put((short)471142); //问题3:为什么这里输出的是99471142?这里的99是什么东西?
print(bb.getShort());
bb.rewind();
}
}
import static net.mindview.util.Print.*;public class GetData {
private static final int BSIZE = 1024;
public static void main(String[] args) {
ByteBuffer bb = ByteBuffer.allocate(BSIZE);
int i = 0;
while(i++ < bb.limit())
if(bb.get() != 0)
print("nonzero");
print("i = " + i); //问题1:这里输出 i = 1025 为什么? 不是应该 1023的嘛~~(0 - 1023)
bb.rewind();
bb.asCharBuffer().put("Howdy!");
char c;
while((c = bb.getChar()) != 0)
printnb(c + " ");
print();
bb.rewind(); //问题2:这里的 .rewind()方法有什么作用?和 clear()有什么区别?
bb.asShortBuffer().put((short)471142); //问题3:为什么这里输出的是99471142?这里的99是什么东西?
print(bb.getShort());
bb.rewind();
}
}
解决方案 »
- 有谁能推荐几本java spring1.0要基础的的核心
- 关于java剔除手机黑名单的算法,有没有更好的?
- 偶尔看到的3个小面试题,求详细解释
- 200分求XFire异常,很急。顶着有份(可追加)
- myeclipse中快速生成构造方法的快捷键
- not declare a static final serialVersionUID field
- 请问有什么比较好用的拆类的工具
- 求jre1.5.0_xx.zip
- 求助java打印,以经郁闷一星期了,分不够在给!!!
- 请哪们高手发一个java的源程序代码给我?
- 有规律的变量名能不能批量生成?如a_1,a_2,a_3.......直接就来个循环,a_k
- 现在我应该如何学习java
bb.limit()是1024.
while(i++ < bb.limit())
当i=1024的时候,i<bb.limit()不成立.i++是i使用完之后加1,i成为1025.
bb.asShortBuffer().put((short)471142); //问题3:为什么这里输出的是99471142?这里的99是什么
这个应该去看jdk帮助文档