LimeWire Collection Component API

org.limewire.collection
Class AndView

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

public class AndView
extends Object

Provides a logical conjunction, 'And', operation on BitFields. AndView gets and finds the next set (equal to 1) and clear (equal to 0) bit starting at a specific location.

For more information, see Logical conjunction.

   
    void sampleCodeAndView(){
        BitSet bs1 = new BitSet();
        bs1.set(0);
        bs1.set(1);

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

        BitField bf1 = new BitFieldSet(bs1, 5);
        BitField bf2 = new BitFieldSet(bs2, 5);

        printBitField(bf1, "bf1");
        printBitField(bf2, "bf2");

        AndView av = new AndView(bf1, bf2);
        printBitField(av, " av");
    }

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

    Output:
        bf1: 11000
        bf2: 10100
         av: 10000


Field Summary
protected  BitField[] fields
           
 
Constructor Summary
AndView(BitField first, BitField... more)
           
 
Method Summary
 int cardinality()
           
 boolean get(int i)
           
 int maxSize()
           
 int nextClearBit(int startIndex)
           
 int nextSetBit(int startIndex)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fields

protected final BitField[] fields
Constructor Detail

AndView

public AndView(BitField first,
               BitField... more)
Method Detail

get

public boolean get(int i)

nextClearBit

public int nextClearBit(int startIndex)

nextSetBit

public int nextSetBit(int startIndex)
Returns:
index of next set bit from index i or -1 if there is no bit left

maxSize

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

cardinality

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

LimeWire Collection Component API

Copyright © 2008 Lime Wire LLC. All Rights Reserved.