To working whith individual bit in a byte, java provides BitSet class that implements
a vector of bits that grows as required. Each bit is treated as boolean value.
the bit of BitSet are indexed bt nonnegative integers. We can working with individual bits.
BitSet may be used to apply logical opearations like AND,OR XOR etc.
Initially, are bits of BitSet are false.
Every bit set has a current size, which is the number of bits of space currently
in use by the bit set. Note that the size is related to the implementation of a bit set,
so it may change with implementation. The length of a bit set relates to logical length
of a bit set and is defined independently of implementation.
package collection.demos;
import java.util.BitSet;
public class BitSetDemo {
public static void main(String[] args) {
BitSet bs = new BitSet(8);
bs.set(0);
bs.set(1);
bs.set(2);
bs.set(3);
bs.set(4);
bs.set(5);
bs.set(6);
bs.set(7);
bs.set(8);
bs.set(9);
bs.set(10);
bs.set(11);
bs.set(12);
bs.set(13);
bs.set(14);
bs.set(15);
bs.set(47);
bs.set(48);
bs.set(49);
bs.set(50);
bs.set(51);
bs.set(52);
bs.set(53);
bs.set(54);
bs.set(55);
bs.set(56);
bs.set(57);
bs.set(58);
bs.set(59);
bs.set(60);
bs.set(61);
bs.set(62);
bs.set(63);
printBits(bs);
//Setting the bit at the specified index to the complement of its current value.
bs.flip(16);
printBits(bs);
}
static void printBits(BitSet bits){
for(int i=0;i<bits.size();i++){
int x=(bits.get(i))?1:0;
System.out.print(""+x);
}
System.out.println("");
}
}
a vector of bits that grows as required. Each bit is treated as boolean value.
the bit of BitSet are indexed bt nonnegative integers. We can working with individual bits.
BitSet may be used to apply logical opearations like AND,OR XOR etc.
Initially, are bits of BitSet are false.
Every bit set has a current size, which is the number of bits of space currently
in use by the bit set. Note that the size is related to the implementation of a bit set,
so it may change with implementation. The length of a bit set relates to logical length
of a bit set and is defined independently of implementation.
package collection.demos;
import java.util.BitSet;
public class BitSetDemo {
public static void main(String[] args) {
BitSet bs = new BitSet(8);
bs.set(0);
bs.set(1);
bs.set(2);
bs.set(3);
bs.set(4);
bs.set(5);
bs.set(6);
bs.set(7);
bs.set(8);
bs.set(9);
bs.set(10);
bs.set(11);
bs.set(12);
bs.set(13);
bs.set(14);
bs.set(15);
bs.set(47);
bs.set(48);
bs.set(49);
bs.set(50);
bs.set(51);
bs.set(52);
bs.set(53);
bs.set(54);
bs.set(55);
bs.set(56);
bs.set(57);
bs.set(58);
bs.set(59);
bs.set(60);
bs.set(61);
bs.set(62);
bs.set(63);
printBits(bs);
//Setting the bit at the specified index to the complement of its current value.
bs.flip(16);
printBits(bs);
}
static void printBits(BitSet bits){
for(int i=0;i<bits.size();i++){
int x=(bits.get(i))?1:0;
System.out.print(""+x);
}
System.out.println("");
}
}
Comments