本文目录一览:
- 1、在java中随机生成10个整数,用户求输入一个数,判断是否存在于这10个整数中?
- 2、java中随机数怎么生成
- 3、java如何生成随机数?
- 4、java如何获取随机数?
- 5、java的随机方法放在哪里
- 6、请问java中如何生成1000~10000之间的随机数?
在java中随机生成10个整数,用户求输入一个数,判断是否存在于这10个整数中?
由于你没有指定这10个整数的生成范围,所以我这里假定是0~99之间的整数,这样用户输入时有10%的几率命中。
整体代码为:
public class Main {
public static void main(String[] args) {
//声明长度为10的随机数数组
int[] randoms = new int[10];
Random random = new Random();
for (int i = 0; i 10; i++) {
//获取0~99之间的一个随机整数,可通过调整nextInt的参数来修改随机数范围
int num = random.nextInt(100);
//如果新生成的数字已经存在于随机数数组中,则重新生成
if (checkDistinct(randoms, num)) {
i--;
continue;
}
randoms[i] = num;
}
//增序排序,好看
Arrays.sort(randoms);
System.out.println("请输入一个整数:");
Scanner scanner = new Scanner(System.in);
//严谨一点这里其实可以对输入的in进行校验,检验其是不是整数,校验方法很多搜一下就有我这就不校验了
int in = scanner.nextInt();
System.out.println("生成的随机数数组为:");
System.out.println(Arrays.toString(randoms));
if (checkDistinct(randoms, in)) {
System.out.println("输入的数字[" + in + "]在其中");
} else {
System.out.println("输入的数字[" + in + "]不在其中");
}
}
//检查新生成的数字是否存在于随机数数组中,若存在,返回true
private static boolean checkDistinct(int[] randoms, int num) {
for (int i = 0; i randoms.length; i++) {
if (randoms[i] == num) {
return true;
}
}
return false;
}
}
运行结果:
输入的数字存在时:
输入的数字不存在时:
java中随机数怎么生成
java的三种随机数生成方式
随机数的产生在一些代码中很常用,也是我们必须要掌握的。而java中产生随机数的方法主要有三种:
第一种:new Random()
第二种:Math.random()
第三种:currentTimeMillis()
java如何生成随机数?
可以先通过random方法生成一个随机数,然后将结果乘以100,然后再利用int方法进行转换,就可以得到一个0到99的随机整数。
java如何获取随机数?
随机数控制在某个范围内,使用模数运算符%\x0d\x0a import java.util.*;\x0d\x0a class TestRandom {\x0d\x0a public static void main(String[] args) {\x0d\x0a Random random = new Random();\x0d\x0a for(int i = 0; i
回答于 2022-11-16
java的随机方法放在哪里
放在javautil包下的。
此方法是完全同步的,可允许多个线程使用而不出现错误。但是,如果许多线程需要以极高的速率生成伪随机数,那么这可能会减少每个线程对拥有自己伪随机数生成器的争用。
为了Java代码的完全可移植性,Java实现必须让类Random使用此处所示的所有算法。
请问java中如何生成1000~10000之间的随机数?
要生成在[min,max]之间的随机整数,可使用Random类进行相关运算,代码如下:
import java.util.Random;
public class RandomTest {
public static void main(String[] args) {
int max=10000;
int min=1000;
Random random = new Random();
int s = random.nextInt(max)%(max-min+1) + min;
System.out.println(s);
}
}
random.nextInt(max)表示生成[0,max]之间的随机数,然后对(max-min+1)取模。
以生成[1000,10000]随机数为例,首先生成0-10000的随机数,然后对(10000-1000+1)取模得到[0-1000]之间的随机数,然后加上min=1000,最后生成的是1000-10000的随机数