❶ java中如何产生1000个随机的整数
/**
*2015年10月23日下午8:37:31
*
*@authorcs12110TODO完成程序
*/
publicclassJoke{
/**
*获取长度为len的一维数组:随机整数
*
*@paramlen
*长度
*@return
*/
publicint[]getRandomNumber(intlen){
if(len<1){
len=1;
}
int[]arr=newint[len];
for(intindex=0;index<len;index++){
arr[index]=(int)(Math.random()*1000);
}
returnarr;
}
/**
*对数组进行排序
*
*@paramarr
*数组
*/
publicvoidsort(int[]arr){
if(null==arr){
return;
}
for(intindex=0;index<arr.length;index++){
for(intj=0;j<arr.length-index-1;j++){
if(arr[j+1]<arr[j]){
inttemp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
/**
*打印数字
*
*@parammaxIndex
*数字最大界限
*/
publicvoiddisplay(int[]arr){
for(intindex=0;null!=arr&&index<arr.length;index++){
if(0==index%10){//输出10个数字换行输出
System.out.println();
}
System.out.print(arr[index]+"");
}
}
publicstaticvoidmain(String[]args){
Jokejoke=newJoke();
joke.goOn("输进任意键,获取1000个随机数");
int[]tempArr=joke.getRandomNumber(1000);
//joke.goOn("输进任意键,打印1000个随机数");
//joke.display(tempArr);
joke.goOn("输进任意键,开始对随机数排序");
joke.sort(tempArr);
joke.display(tempArr);
}
}
❷ 请问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的随机数
❸ java 使用Math.random()产生一个100以内的随机数;
1)使用Java产生一个指定数x以内的随机数。
publicstaticvoidmain(String...args){
intx=100;//上界。
java.util.Randomrandom=newjava.util.Random();
//返回0tox的一个随机数但不会取到x,即返回[0,x)闭开区间的值。
intrn=random.nextInt(x);
System.out.println(rn);
}
2)使用Java产生一个指定区间x到y的随机数。
publicstaticvoidmain(String...args){
intx=100;//下界。
inty=200;//上界。
java.util.Randomrandom=newjava.util.Random();
//返回xtoy之间的一个随机数,不仅可以取到下界x还可以取到上界y,即返回[x,y]的闭区间。
intrn=random.nextInt(y-x+1)+x;
System.out.println(rn);
}
注:上面调用nextInt获取的是正整数,如果要获取浮点数可以调用nextFloat()。