1. import java.util.BitSet; 
  2.  
  3. public class Test { 
  4.     
  5.     
  6.     int numSize = 1000
  7.     
  8.     int arraySize =(int)Math.ceil((double)numSize/32); 
  9.     
  10.     private int array[] = new int[arraySize]; 
  11.     
  12.     
  13.     /** 
  14.      * @param args 
  15.      */ 
  16.     public static void main(String[] args) { 
  17.         
  18.         //也可以使用bitset 
  19.         Test test = new Test(); 
  20.         test.initBitMap(); 
  21.         int sortArray[] = new int[]{1,4,32,2,6,9}; 
  22.         for(int i=0;i<sortArray.length;i++){ 
  23.             test.set1(sortArray[i]); 
  24.         } 
  25.         for(int i=0;i<test.numSize;i++){ 
  26.             if(test.get(i) !=0){ 
  27.                System.out.print((i)+" "); 
  28.             } 
  29.         } 
  30.         
  31.     } 
  32.     
  33.     public void initBitMap(){ 
  34.         for(int i=0;i<array.length;i++){ 
  35.             array[i] = 0; 
  36.         } 
  37.     } 
  38.     public void set1(int pos){ 
  39.         array[pos>>5] =     array[pos>>5] | (1 <<(31-pos% 32) ); 
  40.         
  41.     } 
  42.     
  43.     public int get(int pos){ 
  44.         return array[pos>>5] & (1 <<(31-pos% 32 )); 
  45.     } 
  46.