Cách tạo random một số ngẫu nhiên trong Java
Trò chơi xổ số ngẫu nhiên luôn xuất hiện rất nhiều trong cuộc sống. Điểm chung nhất mà ai cũng có thể nhận ra đó chính là màn bốc thăm kết quả xo so mien nam thu 5. Đây là một trò chơi khá hay khi cảm giác hồi hộp chờ đợi kết quả mang lại cho người chơi cảm giác thích thú lạ kỳ. Trong bài này, chúng ta sẽ cùng nhau tìm hiểu cách viết một ứng dụng vẽ ngẫu nhiên tương tự như trên bằng cách sử dụng các hàm ngẫu nhiên trong lớp Math và lớp Random mà Java đã hỗ trợ.
Random số ngẫu nhiên sử dụng Math class
Lớp Math chứa một phương thức Math.random () tĩnh được sử dụng để ngẫu nhiên hóa một số ngẫu nhiên kiểu dữ liệu kép.
Hàm random () trả về một giá trị kép dương, lớn hơn hoặc bằng 0.0 và nhỏ hơn 1.0. Khi bạn gọi Math.random (), một java.util.random được khởi tạo và sử dụng.
Bạn có thể sử dụng phương thức Math.random () có hoặc không truyền tham số. Nếu bạn cung cấp các tham số, phương thức sẽ tạo ra các số ngẫu nhiên trong các tham số đã cho.
Phương thức randomNumber() sử dụng Math.random() để nhận lấy một giá trị ngẫu nhiên trong khoảng 0.0 đến 1.0
Random số ngẫu nhiên trong một khoảng giá trị
Để tạo các số ngẫu nhiên giữa một phạm vi nhất định, bạn cần chỉ định phạm vi đó. Một biểu thức tiêu chuẩn để đạt được điều này là:
Chúng ta cùng phân tích biểu thức trên:
- Math.random () * (max – min) trả về một giá trị trong phạm vi [0, max – min), trong đó giá trị lớn nhất bị loại bỏ vì giá trị lớn nhất mà Math.random trả về nhỏ hơn 1,0. Ví dụ, muốn ngẫu nhiên các số trong phạm vi [5, 10] theo công thức trên, ta có Math.random () * (10 – 5), kết quả sẽ nằm trong phạm vi [0, 5), không bao gồm 5.
- Tiếp theo, chúng ta cần chuyển giá trị bên dưới từ 0 đến ít nhất là min bằng cách thêm một dải giá trị min. Math.random () * (max – min) + min
- Nhưng với biểu thức trên ta vẫn chỉ nhận được khoảng [0, max). Vì vậy chúng ta cần thêm 1 vào tham số (max – min) thành (max – min + 1). double x = (Math.random () * ((max-min) +1)) + min
Chúng ta có thể random một số int bằng cách convert double sang int.
Giả sử tôi muốn một dải giá trị từ 5 đến 10, tôi muốn lấy ngẫu nhiên số 10 thì ta có biểu thức sau: 10 = (Math.randon) * (10 – 5 + 1) + 5 => Math.random () = 5/6. Từ đó chúng ta có thể suy ra rằng giá trị 10.0 <= max <11.0. Khi chúng ta chuyển đổi từ double sang int, kết quả có thể đạt được [5 10] như mong muốn.
Với cách này bạn hoàn toàn có thể tạo được một chương trình quay thưởng kết quả xổ số hàng ngày. Ví dụ với giải 8 xo so an giang hom nay thì bạn có thể cho chạy trong khoảng giá trị từ 00 đến 99.
Random số ngẫu nhiên sử dụng Random class
Bạn có thể sử dụng lớp java.util.random để tạo các số ngẫu nhiên thuộc các kiểu khác nhau, chẳng hạn như int, float, double, long và boolean. Để tạo số ngẫu nhiên, trước tiên hãy tạo một đối tượng Ngẫu nhiên và sau đó gọi một trong các phương thức tạo giá trị ngẫu nhiên, chẳng hạn như nextInt (), nextDouble () hoặc nextLong ().
Gọi một trong các phương thức sau của Random object sẽ trả về giá trị:
- nextInt(upperbound) sẽ trả về một số nguyên khoảng [0, upperbound – 1]
- nextFloat() trả về 0.0 đến 1.0
- nextDouble() trả về 0.0 đến 1.0
Random số ngẫu nhiên sử dụng ThreadLocalRandom
Để tạo số ngẫu nhiên bằng lớp ThreadLocalRandom, hãy làm theo các bước bên dưới:
- Import the class ThreadLocalRandom class
- Sử dụng các method:
- ThreadLocalRandom.current().nextInt() để random số nguyên
- ThreadLocalRandom.current().nextDouble() để random số kiểu double
- ThreadLocalRandom.current().nextBoolean() để random số float
Để tạo các chương trình ngẫu nhiên trong Java cũng không khó khăn như bạn nghĩ. Chúc các bạn thực hiện thành công sau những hướng dẫn của chúng tôi.
THEO DÕI https://tuhoangmobile.com/ ĐỂ CẬP NHẬT THÊM CÁC THÔNG TIN MỚI KHÁC NHÉ.
The post Cách tạo random một số ngẫu nhiên trong Java first appeared on TỨ HOÀNG MOBILE.
from TỨ HOÀNG MOBILE https://tuhoangmobile.com/cach-tao-random-mot-so-ngau-nhien-trong-java/
Nhận xét
Đăng nhận xét