1. java 獲取一個四位隨機數(並且四位數不重復),並說明原理和演算法
import java.util.*;
public class Get4Number {
public static void main(String[] args) {
System.out.println(getNumber());
}
/** 得到一個0-9的隨機數 */
private static int getRandomNumber() {
return (int) ((Math.random() * 100) % 10);
}
/** 得到一個四位無重復數字的數 */
private static int getNumber() {
Set<Integer> set = new HashSet<Integer>();
while (true) {
int a = getRandomNumber();
set.add(new Integer(a));//Set裡面的元素是不重復的,如果重復是存不進去的。
if(set.size()>3)
break;
}
int index = (int) ((Math.random() * 100) % 4);
if(index==0){index+=1;}
Integer[] arr = new Integer[set.size()];
set.toArray(arr);
String s = "";
if(arr[0].intValue()==0){//如果第一位是0,則隨機和後面三位交換
Integer temp = arr[0];
arr[0] = arr[index];
arr[index] = temp;
}
for(int i=0;i<arr.length;i++){
s += arr[i].intValue();
}
return Integer.parseInt(s);
}
}
2. java編碼中怎樣產生四位隨機數
用這個代碼:
java.util.Randomrandom=newjava.util.Random();
inta=random.nextInt(9000)+1000;//生成從0-指定數(不包括指定數)的整數
從1000-9999;可以看成從0+1000——8999+1000