導航:首頁 > 編程語言 > java不重復數字

java不重復數字

發布時間:2023-04-23 12:28:56

java怎麼生成不重復的隨機數

沒辦法,只好把生成的隨機數放到set中,以後每次取隨機數,判一下set,有的話,重新生成。

② java中如何在0~25的范圍內生成五個不重復的數

按照你的要求編寫的[0-25]范圍內生成五個不重復的整數的Java程序如下

(注意 [0-25]包括0和25兩個整數)

publicclassA{
publicstaticvoidmain(String[]args){
int[]a=newint[5];//定義一個5個元素的整型數組用於存放[0-25]范圍的五個不重復的整數
inti,count=1;//定義一個整型循環變數i,和一個統計不重復整數個數的整型變數count,初始化為1,表示進入while循環前已經有一個數了.
a[0]=(int)(Math.random()*26);//生成第一個[0-25]的隨機整數
while(count<5){//如果生成的隨機數不到5個繼續循環
inttemp=(int)(Math.random()*26);//生成[0-25]的隨機整數,放入臨時變數temp
booleanflag=true;//用於判斷是否與數組已有整數重復的標志,如果不重復為true,重復為false.
for(i=0;i<count;i++){//數組已有數據循環
if(temp==a[i]){//判斷新產生的隨機數是否與數組中已有的數據重復
flag=false;//有重復則設置標志為false
break;//有重復退出循環
}
}
if(flag==true){//如果與數組中的數據不重復
a[count]=temp;//把數據賦給數組
count++;//數組中的整數個數加1
}
}
for(i=0;i<a.length;i++){
System.out.print(a[i]+"");//輸出[0-25]范圍內的五個不重復的整數
}
}
}

③ JAVA中怎樣實現數組中隨機數不重復

可以參考下面的代碼:

public static void main(String[] args) {

int s = -1;

int a[] = new int[100];

int i = 0;

while (i < 100) {

s = (int) (Math.random() * 100 + 1);

for (int j = 0; j < 100; j++) {

if (a[j] == s) {

break;

} else if (j == i) {

a[i] = s;

i++;

break;

}

}

}

}

(3)java不重復數字擴展閱讀:

java參考函數

max(x,y) 返回 x 和 y 之間較大的數

min(x,y) 返回 x 和 y 之間較小的數

pow(x,y) 返回 y^x 的值

random() 返回位於 0 到 1 之間的隨機函數

round(x) 四舍五進後與整

sin(x) 返回數字的正弦值

sqrt(x) 返回數字的平方根

tan(x) 返回一個角度的正切值

toSource() 顯示對象的流代碼

valueOf() 返山納回數教對象的本初值

參激簡考資料來源:網路-Java (計算機編程逗鉛沒語言)

④ java如何生成12位永遠不重復的數字

Calendar calendar = Calendar.getInstance();

System.out.println("現在汪搏:"+calendar.getTime().getTime());

calendar.add(Calendar.YEAR, 10);

System.out.println("10年後:"+calendar.getTime().getTime());

時間戳高並發還是會有重復的,你應該每獲取一次加1的方法生成。乎畝用鎖對象或者把方法聲明為synchronized保證並發也不會重復。如果有用資料庫,也可以用資料庫提供的sequence來幫你生成。

(4)java不重復數字擴展閱讀:

當編輯並運行一個Java程序時,需要同時涉及到這四種方面。使用文字編輯軟體(例如記事本、寫字板、UltraEdit等)或集成開發環境(Eclipse、MyEclipse等)在Java源文件中定義不同的類;

通過調用類(這些類實現了Java API)中的方法來訪問資源系統,把源文件編譯生成一種二進制中間碼,存儲在class文件中,然後再通過運行與操作系統平台環境相對應的Java虛擬機來運行class文件,執行編譯產生的位元組碼,調用class文困頃祥件中實現的方法來滿足程序的Java API調用。

⑤ JAVA中怎樣自動生成不重復的數字

/**
*隨機產生指定范圍內不重復的數字
*
*@parammin產生最小數字
*@parammax產生最大數字
*@paramcount總共要產生多少個不重復的數
*@returnint數組,是從小到大排序後的結果
*/
publicstaticint[]getRandomNumbers(intmin,intmax,intcount){
intnum=0;
inti=0;
int[]arrs=newint[count];
if(count>(max-min)){
System.out.println("產生的數字個數超出設定最大最小值之間的范圍!");
returnnull;
}
while(i<count){
num=(int)(Math.random()*max);
if(num>=min&&!ArrayUtils.contains(arrs,num)){
arrs[i]=num;
i++;
}
}
Arrays.sort(arrs);
returnarrs;
}

⑥ 怎樣用java產生一個指定范圍而且不重復的隨機數

首先,需要一個范圍內的隨機數,第二部判重,如果重復了就再次隨機.
假設我們需要一個m到n的隨機數..
需要用到random函數隨機一個從0到1的數.然後再乘m到n的范圍,再加m
double i = Math.random() * (m - n) + m ----> 生成隨機數
判重..方法有很多種了..比如我們用一個Set來存放已經存在的..
Set<Double> set = new LinkedHashSet<>();
if (set.contains(i)) { 重復了,重新隨機 }
else { 向set中添加: set.add(Double.valueOf(i)); }
2017年8月28日 21:37:44

閱讀全文

與java不重復數字相關的資料

熱點內容
小孩視力訓練app哪個好 瀏覽:828
表格上加密碼 瀏覽:199
伺服器如何調時間 瀏覽:414
安卓怎麼跟蹤對方蘋果手機位置 瀏覽:829
pptp伺服器地址怎麼設置 瀏覽:940
藍月傳奇bt源碼 瀏覽:832
丹麥丹佛斯壓縮機 瀏覽:773
statapwcorr命令 瀏覽:135
怎樣看文件夾創建程序 瀏覽:641
文明重啟伺服器什麼時候重啟 瀏覽:981
app開發哪個比較好 瀏覽:977
程序員電腦卡了 瀏覽:831
壓縮空氣系統作用 瀏覽:404
三輪車用哪個app 瀏覽:29
手游游戲端源碼 瀏覽:92
沉井腳手架計演算法 瀏覽:921
加密twf文件怎麼列印 瀏覽:252
進入recoveryadb命令 瀏覽:3
伺服器為什麼不轉水冷 瀏覽:99
linux命令環境變數 瀏覽:488