求助各位大神
package com.linxueshan;
import java.util.Scanner;
import java.util.Random;
public class HelloWorld {
public static void main(String[] args) {
Random random=new Random();
? ? ? Scanner input=new Scanner(System.in);
? ? ? System.out.print("請輸入雙隨機的數量:");
? ? ? int n=input.nextInt();
? ? ? System.out.print("請輸入隨機庫的數量:");
? ? ? int num=input.nextInt();?
? int i=1;
? while(i<=n) {
? int ran=random.nextInt(num);
? System.out.println("抽取第"+(i)+"個編號為:"+ran);
? i++;
? }
? ? }
}
以上代碼是手動輸入庫的數量,再輸入需要隨機生成的數量,最后生成出來,但是生成出來的數會出現重復,請問如何實現隨機生成不重復的數字?
2019-03-26
import???java.util.*;???? public???class???Test???? {???? ??????????? ????????public???static???void???main(String[]???args)???? ????????{???? ????????????????LinkedList?<Integer>???myList=???new???LinkedList?<Integer>?();???? ????????????????int???n=40;???? ????????????????for(int???i=0;i?<n;i++)???? ????????????????????????myList.add(i+1);???? ????????????????int[]???arr???=???new???int[10];???? ????????????????for(int???i=0;i?<arr.length;i++)???? ????????????????{???? ????????????????????????arr[i]=myList.remove((int)(Math.random()*n));???? ????????????????????????n--;???? ????????????????}???? ????????????????for(int???i=0;i?<arr.length;i++)???? ????????????????{???? ????????????????????????System.out.print(arr[i]+"???");???? ????????????????}???? ????????}???? }