Tôi cần tạo một số boolean ngẫu nhiên. Tuy nhiên, tôi cần phải xác định khả năng trả lại true
. Kết quả là:Boolean ngẫu nhiên với trọng số hoặc thiên vị
private Random random = new Random();
random.nextBoolean();
sẽ không hoạt động.
Một giải pháp khả thi sẽ là:
private Random random = new Random()
public boolean getRandomBoolean(float p){
return random.nextFloat() < p;
}
Tôi đã tự hỏi nếu có một cách tốt hơn hoặc tự nhiên hơn để làm điều này.
EDIT: Tôi đoán tôi đang hỏi liệu có một lớp thư viện cung cấp phương thức nextBoolean (float xác thực) hay không.
loại "tốt hơn" Bạn đang tìm kiếm gì? Điều đó có vẻ hợp lý với tôi ... –
Đây là hai vấn đề riêng biệt (chủ yếu), vì vậy nên được yêu cầu trong hai bài viết riêng biệt ... –
@ JonSkeet Tôi đoán tôi đã hy vọng cho một cái gì đó dọc theo dòng Random.nextBoolean (xác suất dài) – maxf130