La conversion de BitSet de tableau d'Octets

J'ai ramassé cet exemple de ici qui convertit BitSet de tableau d'Octets.

public static byte[] toByteArray(BitSet bits) {
    byte[] bytes = new byte[bits.length()/8+1];
    for (int i=0; i<bits.length(); i++) {
        if (bits.get(i)) {
            bytes[bytes.length-i/8-1] |= 1<<(i%8);
        }
    }
    return bytes;
}

Mais dans les forums de discussion, j'ai vu que par cette méthode, nous avons l'habitude de les obtenir tous les bits que nous allons perdre un peu par calcul. Est-ce vrai? Devons-nous modifier la méthode ci-dessus?

le lien exampledepot.com/egs/java.util/Bits2Array.html est expiré, vous souvenez-vous de ce qu'a été l'exemple?

OriginalL'auteur JavaBits | 2011-06-01