LimeWire collection component api

org.limewire.collection
Class BitFieldSet

java.lang.Object
  extended by org.limewire.collection.BitFieldSet
All Implemented Interfaces:
BitField

public class BitFieldSet
extends java.lang.Object
implements BitField

Provides a BitField implementation for a BitSet object.

   
    void sampleCodeBitFieldSet(){
        BitSet bs1 = new BitSet();
        bs1.set(1);
        bs1.set(3);

        BitSet bs2 = new BitSet();
        bs2.set(2);

        BitSet bs3 = new BitSet();
        bs3.set(3);

        BitField bf1 = new BitFieldSet(bs1, 16);
        BitField bf2 = new BitFieldSet(bs2, 16);
        BitField bf3 = new BitFieldSet(bs3, 16);

        PrintBFInfo(bf1, "bf1");
        PrintBFInfo(bf2, "bf2");
        PrintBFInfo(bf3, "bf3");      
    }

    void PrintBFInfo(BitField bf, String bfn){
        System.out.println(bfn);
        for(int i = 0; i < bf.maxSize(); i++){
            int j = 0;
            if(bf.get(i))
                j = 1;          
            System.out.print(j);
        }
        System.out.println(); 

        System.out.println("cardinality: " + bf.cardinality());
        System.out.println("Next clear bit is: " + bf.nextClearBit(2));
        System.out.println("Next set bit is: " + bf.nextSetBit(0));
        System.out.println();         
    }

    Output:
        bf1
        0101000000000000
        cardinality: 2
        Next clear bit is: 2
        Next set bit is: 1

        bf2
        0010000000000000
        cardinality: 1
        Next clear bit is: 3
        Next set bit is: 2

        bf3
        0001000000000000
        cardinality: 1
        Next clear bit is: 2
        Next set bit is: 3
 


Constructor Summary
BitFieldSet(BitSet bs, int maxSize)
          Constructs a BitField view over the passed bitset with the specified size.
 
Method Summary
 int cardinality()
           
 boolean get(int i)
           
 int maxSize()
           
 int nextClearBit(int i)
           
 int nextSetBit(int i)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BitFieldSet

public BitFieldSet(BitSet bs,
                   int maxSize)
Constructs a BitField view over the passed bitset with the specified size.

Method Detail

maxSize

public int maxSize()
Specified by:
maxSize in interface BitField

cardinality

public int cardinality()
Specified by:
cardinality in interface BitField

get

public boolean get(int i)
Specified by:
get in interface BitField

nextClearBit

public int nextClearBit(int i)
Specified by:
nextClearBit in interface BitField

nextSetBit

public int nextSetBit(int i)
Specified by:
nextSetBit in interface BitField
Returns:
index of next set bit from index i or -1 if there is no bit left

LimeWire collection component api

Copyright © 2009 Lime Wire LLC. All Rights Reserved.