BulkAccessBuffer.java

import java.nio.*;
public class BulkAccessBuffer {
  public static void main(String[] args) {
    int[] it1 = {0, 1, 2, 3, 4, 5};
    // Création d'un tampon d'entier
    IntBuffer ib1 = IntBuffer.allocate(it1.length);
    // Recopie du tableau it1 dans le tampon
    ib1.put(it1);
    // Placer la position du tampon en 2
    ib1.position(2);
    // Allouer un nouveau tampon
    IntBuffer ib2 = IntBuffer.allocate(ib1.capacity());
    // Recopier ib1 à partir de la position 2 dans ib2
    ib2.put(ib1);
    // Placer la limite après le dernier élément lu
    ib2.limit(ib2.position());
    // Placer la position en 0
    ib2.position(0);
    // Allouer un tableau pour recopier les données de ib2
    int[] it2 = new int[ib2.remaining()];
    // Recopier le contenu du tampon dans le tableau
    ib2.get(it2);
    // Afficher le tableau
    for (int i=0; i<it2.length; i++) {
      System.out.println(it2[i]); // Affiche 2 3 4 5
    }
  }
}