因此,这是到目前为止我尝试过的最有效的方法:
private static class FixedSizeBitSet extends BitSet { private final int nbits; public FixedSizeBitSet(final int nbits) { super(nbits); this.nbits = nbits; } @Override public String toString() { final StringBuilder buffer = new StringBuilder(nbits); IntStream.range(0, nbits).mapToObj(i -> get(i) ? '1' : '0').forEach(buffer::append); return buffer.toString(); }}或使用其他流的其他方式:
@Overridepublic String toString() { return IntStream .range(0, nbits) .mapToObj(i -> get(i) ? '1' : '0') .collect( () -> new StringBuilder(nbits), (buffer, characterToAdd) -> buffer.append(characterToAdd), StringBuilder::append ) .toString();}


