This Java program is to Implement Bit Array. A bit array (also known as bitmap, bitset, bit string, or bit vector) is an array data structure that compactly stores bits. It can be used to implement a simple set data structure. A bit array is effective at exploiting bit-level parallelism in hardware to perform operations quickly.
Here is the source code of the Java program to implement bit array. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.BitSet;
public class BitArray
{
private BitSet bits;
public BitArray(String bits)
{
this.bits = fromString(bits);
}
private BitSet getBitSet()
{
return bits;
}
private void setBitSet(BitSet bitSet )
{
bits = bitSet;
}
public BitArray and(BitArray bitarray)
{
BitSet bits1 = this.getBitSet();
BitSet bits2 = bitarray.getBitSet();
bits1.and(bits2);
this.setBitSet(bits1);
return this;
}
public BitArray or(BitArray bitarray)
{
BitSet bits1 = this.getBitSet();
BitSet bits2 = bitarray.getBitSet();
bits1.or(bits2);
this.setBitSet(bits1);
return this;
}
private BitSet fromString(String bit)
{
return BitSet.valueOf(new long[] { Long.parseLong(bit, 2) });
}
public String toString()
{
return Long.toString(bits.toLongArray()[0], 2);
}
public static void main (String...arg)
{
BitArray array1 = new BitArray("1010");
BitArray array2 = new BitArray("1001");
BitArray array3 = new BitArray("1100");
System.out.println("The BitArray Are");
System.out.println("First :" + array1);
System.out.println("Second :" +array2);
System.out.println("Third : " + array3);
System.out.println("First AND Second");
System.out.println(array1.and(array2));
System.out.println("Second OR Third");
System.out.println(array2.or(array3));
}
}
$javac BitArray.java $java BitArray The BitArray Are First :1010 Second :1001 Third : 1100 First AND Second 1000 Second OR Third 1101
Related posts:
Java Program to Implement Suffix Array
A Guide to Concurrent Queues in Java
Composition, Aggregation, and Association in Java
Java Program to Implement Double Ended Queue
Jackson Ignore Properties on Marshalling
Hướng dẫn Java Design Pattern – Transfer Object
Mệnh đề if-else trong java
Shuffling Collections In Java
Biểu thức Lambda trong Java 8 – Lambda Expressions
Cơ chế Upcasting và Downcasting trong java
Java Program to Repeatedly Search the Same Text (such as Bible by building a Data Structure)
Spring Boot - Build Systems
Quick Intro to Spring Cloud Configuration
Introduction to Apache Commons Text
Java Program to Implement Self organizing List
Java Program to Implement Stack
Java Program to Perform Preorder Recursive Traversal of a Given Binary Tree
Java String Conversions
Java Program to Implement Best-First Search
Java Program to Implement ConcurrentSkipListMap API
Java Program to Implement Ternary Heap
Java Program to Implement Naor-Reingold Pseudo Random Function
Phương thức forEach() trong java 8
Phương thức tham chiếu trong Java 8 – Method References
Display Auto-Configuration Report in Spring Boot
XML Serialization and Deserialization with Jackson
Hướng dẫn Java Design Pattern – Facade
Java Program to Implement String Matching Using Vectors
Java Program to Generate All Possible Combinations of a Given List of Numbers
Spring Security 5 – OAuth2 Login
Default Password Encoder in Spring Security 5
Create Java Applet to Simulate Any Sorting Technique