'daki BitSet'i rasgele başlatır. Rasgele başlatılması gereken BitSet'im var. Bunu yapmak için herhangi bir yöntem var mı?JAVA
Şimdiden teşekkürler.
'daki BitSet'i rasgele başlatır. Rasgele başlatılması gereken BitSet'im var. Bunu yapmak için herhangi bir yöntem var mı?JAVA
Şimdiden teşekkürler.
Sadece BitSet üzerinden gidin ve Random sınıfının nextBoolean() öğesini çağırın.
Böyle bir kurucu yok. Yapmanız gereken şey bir BitSet oluşturmak ve sonra bir döngüde tüm bitleri rastgele değerlere ayarlamaktır.
Java 7 kullanıyorsanız, sen Random.nextBytes(byte[])
ile rastgele bayt dizisi daha sonra aynı bayt dizisinden bir BitSet
oluşturmak için statik BitSet.valueOf(byte[])
yöntemi kullanın başlatabilir.
Random rnd = new Random();
// ...
byte[] randomBytes = new byte[NUM_BYTES];
rnd.nextBytes(randomBytes);
return BitSet.valueOf(randomBytes);
Yoksa 50:50 dışında bir şey olması 0
vs 1
bit oranını istiyorsanız an old SO question of mine göz atın.
Sınırsız bir bit bitinin tüm bitlerini ayarlamak biraz zaman alacak ... OP'in kaç bit ayarlayacağını belirlemek zorunda olduğunu açıkça belirtmek isteyebilir. – yshavit
Evet, bir BitSet sabit uzunlukta olduğunu varsayıyordum. – Thilo