# BitSet static BitSet valueOf(LongBuffer lb) Method Example Program

Returns a new bit set containing all the bits in the given long buffer between its position and limit.

#### Program

```package com.candidjava;

import java.nio.ByteBuffer;

/**
* @author : vinod kumar v
* @description :Returns a new bit set containing all the bits in the given long
*              buffer between its position and limit.
* */
public class BitSetStaticLongBuffer {
private static ByteBuffer longBuffer = ByteBuffer.allocate(Long.BYTES);
private static ByteBuffer intBuffer = ByteBuffer.allocate(Integer.BYTES);

private static byte[] longToByteArray(long value) {
longBuffer.putLong(0, value);
return longBuffer.array();
}

private static int byteArrayToInt(byte[] array) {
intBuffer.put(array, 0, array.length);
intBuffer.flip();
return intBuffer.getInt();
}
}
```

#### Output

Bitset1:{0, 1, 2, 3, 4, 5}
Bitset2:{2, 4, 6, 8, 10}
{0, 1, 3, 5, 6, 8, 10}

#### Explanation

public static BitSet valueOf(LongBuffer lb)
Returns a new bit set containing all the bits in the given long buffer between its position and limit.
More precisely,
BitSet.valueOf(lb).get(n) == ((lb.get(lb.position()+n/64) & (1L<<(n%64))) != 0)
for all n < 64 * lb.remaining().

The long buffer is not modified by this method, and no reference to the buffer is retained by the bit set.

Parameters:
lb - a long buffer containing a little-endian representation of a sequence of bits between its position and limit, to be used as the initial bits of the new bit set

Related Post