Java NIO之Buffer中flip()、rewind()、clear()方法解析

阅读: 评论:0

Java NIO之Buffer中flip()、rewind()、clear()方法解析

Java NIO之Buffer中flip()、rewind()、clear()方法解析

1、flip()

    public final Buffer flip() {limit = position;//将当前的position位置赋值给limitposition = 0;//将position赋值为0,即归位mark = -1;return this;}

2、rewind()

    public final Buffer rewind() {position = 0;//只是将position归位,limit不变mark = -1;return this;}

3、clear()

    public final Buffer clear() {position = 0;//将position归位limit = capacity;//将capacity赋值给limit,使limit归位mark = -1;return this;}

4、示意图

5、实例

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;public class TestNIO {public static void main(String[] args) {ByteBuffer buf = ByteBuffer.allocate(1024);buf.put("whataya want from me".getBytes());buf.put(", as long as you love me".getBytes());buf.flip();buf.put("1234567".getBytes());wind();while (buf.hasRemaining())System.out.print((char) ());buf.clear();while (buf.hasRemaining())System.out.print(() ());}
}

运行结果:

1234567 want from me, as long as you love me

1234567 want from me, as long as you love me…后面有许多空格填充

Process finished with exit code 0

本文发布于:2024-01-31 15:44:28,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170668707129610.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:方法   Buffer   NIO   Java   clear
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23