Java代码如何随机抽取数字1-5
时间: 2024-02-09 22:13:20 浏览: 28
在Java中,可以使用Random类来生成随机数。以下是一个随机生成1-5之间整数的Java代码示例:
```
import java.util.Random;
public class RandomNumber {
public static void main(String[] args) {
Random random = new Random();
int randomNumber = random.nextInt(5) + 1; // 生成1-5之间的随机整数
System.out.println("随机数是:" + randomNumber);
}
}
```
在这段代码中,我们先创建了一个Random对象,然后使用nextInt()方法生成一个0-4之间的随机整数,再加1即可得到1-5之间的随机整数。最后输出随机数即可。
相关问题
Java 代码实现一个数字再次出现的概率
假设有一个包含n个数字的数组,数字的范围为1到m,现在从这个数组中随机抽取k个数字,求这k个数字中至少有一个数字重复出现的概率。
这个问题可以使用概率论中的补集思想来解决。即先求出这k个数字中没有数字重复出现的概率,然后用1减去这个概率即可得到至少有一个数字重复出现的概率。
假设我们选取的第一个数字为x1,则后面选取的k-1个数字中不能有x1,因此后面选取的数字的范围为1到m-1。如果我们选取的第二个数字为x2,则后面选取的k-2个数字中不能有x2,因此后面选取的数字的范围为1到m-2。以此类推,对于第i个数字,后面选取的数字的范围为1到m-i+1。
因此,选取k个数字且没有数字重复出现的概率为:
P1 = m*(m-1)*(m-2)*...*(m-k+1)/(m^k)
那么至少有一个数字重复出现的概率为:
P2 = 1 - P1
Java代码实现如下:
```java
public static double probability(int n, int m, int k) {
double p = 1.0;
for (int i = 1; i <= k; i++) {
p *= (double)(m-i+1) / m;
}
return 1 - p;
}
```
其中,n为数组长度,m为数字范围,k为选取的数字个数。
例如,如果我们有一个包含10个数字的数组,数字范围为1到100,现在从数组中随机抽取3个数字,那么至少有一个数字重复出现的概率为:
```java
double p = probability(10, 100, 3);
System.out.println(p); //输出0.264
```
因此,这个问题的答案是0.264。
用java编写抽取随机数组的代码,并且每次都要固定抽到其中一个数字
以下是用Java编写的抽取随机数组并固定结果的代码:
```java
import java.util.Random;
public class RandomArray {
public static void main(String[] args) {
// 定义数组
int[] nums = {1, 2, 3, 4, 5, 6, 7, 8, 9};
// 生成随机数
Random random = new Random();
int index = random.nextInt(nums.length);
// 输出随机数
System.out.println("随机选取的数字是:" + nums[index]);
}
}
```
这段代码中,我们定义了一个包含数字1到9的数组,然后使用Java自带的Random类生成一个随机数的索引,最后输出该随机数对应的数组元素。由于每次运行程序时,生成的随机数都是不同的,因此可以保证每次输出的结果都是随机的。