⑴ java的两种产生随机数[0-2]
方法一不能产生数值为2的随机数,只能产生数值为0,1的随机数。
Math的public static double random()方法返回一个double值,该值大于等于 0.0且小于1.0。
因此(int)(Math.random()*2);中Math.random()*2的值是一个随机的大于等于0,小于2的double型的小数,强制转换成int后只能产生数字0,1,不能产生2。
假设要产生[min,max]范围的整数,可以使用以下公式:
(int)(Math.random()*(max-min+1))+min;
因此,要产生[0,2]可以使用int computer=(int)(Math.random()*3);。
方法二可以。
⑵ 请问Java怎么生成随机数并显示
//新建一个test.java文件
//导入随机数Random包
importjava.util.Random;
publicclasstest{
publicstaticvoidmain(Stringargs[]){
Randomr=newRandom();//创建随机数生成器
inta=r.nextInt();//创建int类型变量接收随机数
System.out.println(a);//控制台打印输出
}
}
预览图:
⑶ Java怎么产生随机数
一、利用random方法来生成随机数。
在Java语言中生成随机数相对来说比较简单,因为有一个现成的方法可以使用。在Math类中,Java语言提供了一个叫做random的方法。通过这个方法可以让系统产生随机数。
二、通过Random类来生成随机数。
在Java语言中,除了可以通过random 方法来产生随机数之外,还可以通过一个random类来产生随机数。程序开发人员可以通过实例化一个Random对象来创建一个随机数的生成器。如 Random i=new Random()。通过这条语句就利用了Random类创建了一个随机数的生成器。数
三、产生随机的字符。
可以利用random方法来产生随机字符。如可以利用代码生成一个随机的小写字符:(char)(‘a’+Math.random()*(‘z’-‘a’+1))。其实这跟生成任意两个数之间的随机数类似。通过以上的代码就可以生成一个范围之内的任意随机字符。通过对这个代码进行适当的修整,还可以生成任意两个字符之间的随机字符与任意大写字符的随机字符。其转换的方式跟上面提到的任意范围之内的随机数类似。
⑷ java 生成随机数
public class test {
public static void main(String args[]){
int len = 6;
int[] a ={1,2,3,4,5,6};
int[] b = new int[len];
for(int i=0;i<6;i++){
int index = (int)(Math.random()*len); //随机生成数组的一个下标
b[i]=a[index]; //把这个下标数组的元素赋值给b[i];
a[index]=a[len-1]; //然后把数组中最后一个元素的值赋给下标元素 然后剔除最后那个元素
len--;
}
for(int k:b){
System.out.print(k+" ");
}
}
}
⑸ java 瞬间产生N个随机数
package gy.m8.d98;
import java.util.Random;
public class MathUtil {
public static Random r = new Random();
public static int getRandom(int min, int max) {
if (min == max) {
return min;
}
if (max < min) {
int tmp = max;
max = min;
min = tmp;
}
int num = Math.abs(r.nextInt()) % (max - min);
return (num + min);
}
public static void main(String[] args) {
int min = 0;
int max = 1000;
int count = 50;
for (int i = 0; i < count; i++) {
System.out.println("生成的随机数是" + getRandom(min, max));
}
}
}
分享
⑹ Java产生随机数的几种方式
方法1
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
例:
(int)(1+Math.random()*(10-1+1))
从1到10的int型随数
方法2
获得随机数
for (int i=0;i<30;i++)
{System.out.println((int)(1+Math.random()*10));}
(int)(1+Math.random()*10)
通过java.Math包的random方法得到1-10的int随机数
公式是:最小值---最大值(整数)的随机数
(类型)最小值+Math.random()*最大值
方法3
Random ra =new Random();
for (int i=0;i<30;i++)
{System.out.println(ra.nextInt(10)+1);}
通过java.util包中的Random类的nextInt方法来得到1-10的int随机数
生成0到1之间的任意随机小数:
生成[0,d)区间的随机小数,d为任意正的小数,则只需要将nextDouble方法的返回值乘以d即可。
[n1,n2]
也就是 ra.nextDouble() * (n2-n1)+n1
⑺ java怎么随机生成50个随机数
//测试通过,见代码实现
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class RandomTestA {
public static void main(String[] args) {
Random r = new Random();
float sum=0;
List list=new ArrayList();
for (int i = 0; i < 100; i++) {
float a=r.nextFloat()*100;
list.add(a);
}
Collections.sort(list);
for (int i = 0; i < list.size(); i++) {
sum+=(Float) list.get(i);
}
System.out.println("和="+sum);
System.out.println("平均值="+(sum/100));
System.out.println("最小值="+list.get(0));
}
}
⑻ 如何在java中产生随机数
在j2se里我们可以使用Math.random()方法来产生一个随机数,这个产生的随机数是0-1之间的一个double,我们可以把他乘以一定的数,比如说乘以100,他就是个100以内的随机,这个在j2me中没有。
在java.util这个包里面提供了一个Random的类,我们可以新建一个Random的对象来产生随机数,他可以产生随机整数、随机float、随机double,随机long,这个也是我们在j2me的程序里经常用的一个取随机数的方法。
在我们的System类中有一个currentTimeMillis()方法,这个方法返回一个从1970年1月1号0点0分0秒到目前的一个毫秒数,返回类型是long,我们可以拿他作为一个随机数,我们可以拿他对一些数取模,就可以把他限制在一个范围之内。
⑼ JAVA随机生成100以内的随机数
希望这不是老师给你布置的作业
public static void main(String[] args) {
int sum = 0;
int count = 0;
while(sum < 1000){
int num = (int)(Math.random() * 100);
System.out.print(num + " ");
sum += num;
count++;
if(count % 10 == 0){
System.out.println();
}
}
}
---------------------
楼上的 不是要生成1000个数
而是要生成的数的和小于1000
⑽ JAVA如何产生多个随机数
简单得不能再简单.
int n = ??;//n就是你想到的个数,自己写
for(int i=0;i<n; i++)
{
int a=(int)(Math.random()*10);
System.out.println(a);
}