⑴ 產生10個范圍在1-10之間的不重復的隨機數,原樣輸出,用java中的數組。
import
java.util.Random;
public
class
Rand
{
public
static
void
main(String[]
args)
{
//產生隨機數的類
Random
random=new
Random();
//裝隨機數的數組
10個整數
int[]
num=new
int[10];
//臨時存放產生的一個隨機數
int
ret=0;
//定義標志位,flag=false代表數組中無重復數,true代表有重復數
boolean
flag=false;
for
(int
i
=
0;
i
<
num.length;)
{
//產生隨機數
ret=Math.abs(random.nextInt()%10)+1;
//循環檢測該隨機數是否與數組中的數重復
for
(int
j
=
0;
j
<
num.length;
j++)
{
//如果存在重復,標志位變為true,並且break退出循環檢測
if
(ret==num[j])
{
flag=true;
break;
}else
{
flag=false;
}
}
//如果檢測完無重復數據,則將產生的隨機數存入數組中,並且數組下標計數加1
if
(!flag)
{
num[i]=ret;
i++;
}
}
//循環輸出產生的隨機數
for
(int
i
:
num)
{
System.out.print(i+"
");
}
}
}
輸出:6
3
5
1
4
10
7
9
8
2
有不明白的請繼續問
⑵ 怎麼使用java編程:隨機產生一個1-10之間愛的隨機數,由用戶重復從鍵盤輸入值,直到猜中該隨機數為止
代碼如下:
importjava.util.Date;
importjava.util.Scanner;
publicclassGuessNumberGames{
staticlongnowstart;
publicstaticvoidmain(String[]args){
intnumber=(int)(Math.random()*10+1);
inttemp=number;
System.out.println("請猜一個10以內的數:");
GuessNumberGamesrt=newGuessNumberGames();
intin=rt.Sn();
nowstart=newDate().getTime();
Booleanyn=rt.Compare(temp,in);
while(!yn){
System.out.println("請重新輸入:");
intin1=rt.Sn();
yn=rt.Compare(temp,in1);
}
System.out.println("正確數字是:"+number);
}
publicBooleanCompare(inttemp,intnumber){
Booleanyesno=null;
if(temp==number){
System.out.println("猜對了!");
longnowend=newDate().getTime();
System.out.println("一共用時"+(nowend-nowstart)/1000+"秒");
yesno=true;
}elseif(number<temp){
System.out.println("猜小了");
yesno=false;
}elseif(number>temp){
System.out.println("猜大了");
yesno=false;
}
returnyesno;
}
publicintSn(){
Scannersc=newScanner(System.in);
intin=sc.nextInt();
returnin;
}
}
滿意請採納!
⑶ java怎麼每隔一秒鍾輸出一個隨機數(1-10之間)
一個用到定時器,一個用到隨機函數,
定時器就不說了,隨機函數也不說了,
自己去查文檔,幾行代碼就搞定了
⑷ 誰知道怎樣用Java產生1至10的隨機數並對它實現有序排列
用java的Random吧,
Random r=new Random();
int ran=r.nextInt(10);
這樣產生的就是1到10的數字。你用數組存起來排序就可以了
http://..com/question/87159986.html
⑸ Java中用Random類生成1到9的隨機數該怎麼寫使用種子
寫法:inttemp=m+(int)(Math.random()*(n+1-m));//Java生成從m到n的隨機整數[m,n]。
random(),函數,random函數返回一個0~num-1之間的隨機數。random(num)是在stdlib.h中的一個宏定義。num和函數返回值都是整型數。
(5)java隨機數生成1到10擴展閱讀:
注意
如需要在一個random()序列上生成真正意義的隨機數,在執行其子序列時使用randomSeed()函數預設一個絕對的隨機輸入,例如在一個斷開引腳上的analogRead()函數的返回值。
反之,有些時候偽隨機數的精確重復也是有用的。這可以在一個隨機系列開始前,通過調用一個使用固定數值的randomSeed()函數來完成。
⑹ java如何產生1-8的整數隨機數
(int)(Math.random()*8)+1
或者
Random r =new Random(100);
System.out.println(r.nextInt(8)+1);
Java產生隨機數的兩種方式
1、通過Math.random()方法返回一個0到1之間的double值。
2、通過Random類來產生一個隨機數,這個是專業的Random工具類,功能強大。
Math.random()方法
Math.random()方法是 Java 的一個靜態方法,返回一個0到1之間,前閉後開區間的double值。
(int)(Math.random()*10) 返回0到9的隨機整數。
(int)(Math.random()*n) 返回0到n的隨機整數。
(int)(Math.random()*100)+1 返回1到100之間的隨機整數,前面返回0到99之間的隨機數,加1就成了1到100之間的隨機數。
Random類
Random 類是 Java 的 util 包中的一個類。
一、Random類使用說明
Random類使用的根本策略是分帶種子和不帶種子的Random的實例。
通俗說,兩者的區別是:帶種子的,每次運行生成的結果都是一樣的。
不帶種子的,每次運行生成的都是隨機的,沒有規律可言。
創建不帶種子的Random對象
Random random = new Random();
使用一個和當前系統時間對應的相對時間有關的數字作為種子數。
創建帶種子的Random對象有兩種方法:
1) Random random = new Random(10);
2) Random random = new Random();random.setSeed(10);
種子的作用是什麼?
種子就是產生隨機數的第一次使用值,機制是通過一個函數,將這個種子的值轉化為隨機數空間中的某一個點上,並且產生的隨機數均勻的散布在空間中。以後產生的隨機數都與前一個隨機數有關。
舉例:
Random r =new Random(100);
System.out.println(r.nextInt(20));
100是種子,r.nextInt(20)中的20是隨機數的上限,產生的隨機數為0-20的整數,不包括20,種子數只是隨機演算法的起源數字,和生成的隨機數字的區間沒有任何關系。
初始化時100並沒有起直接作用(注意:不是沒有起作用)。