Java | Set 1中的IntBuffer put()方法

put(int i)

这个 put(int i) 方法 JAVA尼奥。IntBuffer 类用于将给定的int写入当前位置新创建的int缓冲区,然后递增该位置。

null

语法:

public abstract IntBuffer put(int i)

参数: 此方法接受int值 作为要写入int缓冲区的参数。

返回值: 这个方法返回这个缓冲区,在其中插入int值。

例外情况: 此方法引发以下异常:

  • BufferOverflowException- 如果该缓冲区的当前位置不小于其限制
  • ReadOnlyBufferException- 如果这个缓冲区是只读的

以下是说明put(int i)方法的示例:

例1:

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity
IntBuffer ib = IntBuffer.allocate(capacity);
// putting the value in Intbuffer using put() method
ib.put( 8 );
ib.put( 9 );
ib.put( 7 );
ib.rewind();
// print the IntBuffer
System.out.println( "Original IntBuffer: "
+ Arrays.toString(ib.array()));
}
catch (BufferOverflowException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Original IntBuffer: [8, 9, 7]

例2: 演示BufferOverflowException。

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity
IntBuffer ib = IntBuffer.allocate(capacity);
// putting the value in Intbuffer using put() method
ib.put( 8 );
ib.put( 9 );
ib.put( 7 );
System.out.println( "Trying to put the Int at the "
+ "position more than its limit" );
ib.put( 7 );
// rewind the Intbuffer
ib.rewind();
// print the IntBuffer
System.out.println( "Original IntBuffer:  "
+ Arrays.toString(ib.array()));
}
catch (BufferOverflowException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Trying to put the Int at the position more than its limit
Exception throws : java.nio.BufferOverflowException

例3: 演示ReadOnlyBufferException。

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity using allocate() method
IntBuffer ib = IntBuffer.allocate(capacity);
// Creating a read-only copy of IntBuffer
// using asReadOnlyBuffer() method
IntBuffer ib1 = ib.asReadOnlyBuffer();
System.out.println( "Trying to put the Int value"
+ " in read only buffer" );
// putting the value in readonly Intbuffer
// using put() method
ib1.put( 8 );
}
catch (BufferOverflowException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Trying to put the Int value in read only buffer
Exception throws : java.nio.ReadOnlyBufferException

put(int索引,int i)

java的put(intindex,inti)方法。尼奥。IntBuffer类用于将给定的int写入给定索引处的缓冲区。

语法:

public abstract IntBuffer put(int index, int i)

参数: 此方法将以下参数作为参数:

  • 指数 :将写入int的索引
  • :要写入的int值

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

例外情况: 此方法引发以下异常:

  • IndexOutOfBoundsException- 如果索引为负数或不小于缓冲区的限制
  • ReadOnlyBufferException- 如果这个缓冲区是只读的

下面是说明put(int index,int i)方法的示例:

例1:

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity
IntBuffer ib = IntBuffer.allocate(capacity);
// putting the value in Intbuffer using put() at  index 0
ib.put( 0 , 8 );
// putting the value in Intbuffer using put() at  index 2
ib.put( 2 , 9 );
// putting the value in Intbuffer using put() at  index 1
ib.put( 1 , 7 );
// rewinding the Intbuffer
ib.rewind();
// print the IntBuffer
System.out.println( "Original IntBuffer:  "
+ Arrays.toString(ib.array()));
}
catch (IndexOutOfBoundsException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Original IntBuffer:  [8, 7, 9]

例2: 展示IndexOutOfBoundsException。

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity
IntBuffer ib = IntBuffer.allocate(capacity);
// putting the value in Intbuffer
// using put() at  index 0
ib.put( 0 , 8 );
// putting the value in Intbuffer
// using put() at  index 2
ib.put( 2 , 9 );
// putting the value in Intbuffer
// using put() at  index -1
System.out.println( "Trying to put the value"
+ " at the negative index" );
ib.put(- 1 , 7 );
}
catch (IndexOutOfBoundsException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Trying to put the value at the negative index
Exception throws : java.lang.IndexOutOfBoundsException

例3: 演示ReadOnlyBufferException。

// Java program to demonstrate
// put() method
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declaring the capacity of the IntBuffer
int capacity = 3 ;
// Creating the IntBuffer
try {
// creating object of Intbuffer
// and allocating size capacity using allocate() method
IntBuffer ib = IntBuffer.allocate(capacity);
// Creating a read-only copy of IntBuffer
// using asReadOnlyBuffer() method
IntBuffer ib1 = ib.asReadOnlyBuffer();
System.out.println( "Trying to put the Int value"
+ " in read only buffer" );
// putting the value in readonly Intbuffer
// using put() method
ib1.put( 0 , 8 );
}
catch (BufferOverflowException e) {
System.out.println( "Exception throws : " + e);
}
catch (ReadOnlyBufferException e) {
System.out.println( "Exception throws : " + e);
}
}
}


输出:

Trying to put the Int value in read only buffer
Exception throws : java.nio.ReadOnlyBufferException

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享