rewind java_Java ShortBuffer rewind()用法及代码示例

本文详细介绍了 Java NIO 中 ShortBuffer 的 rewind() 方法,该方法用于将缓冲区指针重置到起始位置。示例代码展示了在不同情况下使用 rewind() 方法后缓冲区的位置和限制如何变化,帮助理解其工作原理。
摘要由CSDN通过智能技术生成

java.nio.ShortBuffer类的rewind()方法用于倒带此缓冲区。通过倒带此Buffer,可以执行以下操作:

当前位置设置为零

如果有标记,则将其丢弃,但标记值不变。

用法:

public ShortBuffer rewind()

参数:此方法不接受任何参数。

返回值:此方法返回此缓冲区。

下面是说明rewind()方法的示例:

范例1:

// Java program to demonstrate

// rewind() method

import java.nio.*;

import java.util.*;

public class GFG {

public static void main(String[] args)

{

// defining and allocating ShortBuffer

// using allocate() method

ShortBuffer shortBuffer

= ShortBuffer.allocate(4);

// put short value in shortBuffer

// using put() method

shortBuffer.put((short)10);

shortBuffer.put((short)20);

// print the short buffer

System.out.println(

"Buffer before operation: "

+ Arrays.toString(

shortBuffer.array())

+ "\nPosition: "

+ shortBuffer.position()

+ "\nLimit: "

+ shortBuffer.limit());

// rewind the Buffer

// using rewind() method

shortBuffer.rewind();

// print the shortbuffer

System.out.println(

"\nBuffer after operation: "

+ Arrays.toString(

shortBuffer.array())

+ "\nPosition: "

+ shortBuffer.position()

+ "\nLimit: "

+ shortBuffer.limit());

}

}

输出:

Buffer before operation: [10, 20, 0, 0]

Position: 2

Limit: 4

Buffer after operation: [10, 20, 0, 0]

Position: 0

Limit: 4

范例2:

// Java program to demonstrate

// rewind() method

import java.nio.*;

import java.util.*;

public class GFG {

public static void main(String[] args)

{

// defining and allocating ShortBuffer

// using allocate() method

ShortBuffer shortBuffer

= ShortBuffer.allocate(5);

// put short value in shortBuffer

// using put() method

shortBuffer.put((short)10);

shortBuffer.put((short)20);

shortBuffer.put((short)30);

// mark will be going to discarded by rewind()

shortBuffer.mark();

// print the buffer

System.out.println(

"Buffer before operation: "

+ Arrays.toString(

shortBuffer.array())

+ "\nPosition: "

+ shortBuffer.position()

+ "\nLimit: "

+ shortBuffer.limit());

// Rewind the Buffer

// using rewind() method

shortBuffer.rewind();

// print the buffer

System.out.println(

"\nBuffer after operation: "

+ Arrays.toString(

shortBuffer.array())

+ "\nPosition: "

+ shortBuffer.position()

+ "\nLimit: "

+ shortBuffer.limit());

}

}

输出:

Buffer before operation: [10, 20, 30, 0, 0]

Position: 3

Limit: 5

Buffer after operation: [10, 20, 30, 0, 0]

Position: 0

Limit: 5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值