code: public static int getNumSetBits(ByteBuffer bfBuffer, int start)
    {
      ByteBuffer view = bfBuffer.duplicate().order(ByteOrder.BIG_ENDIAN);
      view.position(start);
      int numLongs = view.getInt(1 + start);
      int setBits = 0;
      for (int i = 0, pos = START_OF_SERIALIZED_LONGS + start; i < numLongs; i++, pos += Long.BYTES) {
        setBits += Long.bitCount(view.getLong(pos));
      }
      return setBits;
    }
docs: ByteBuffer based copy of logic of {@link BloomKFilter#getNumSetBits()}
  @param bfBuffer
  @param start
  @return