1. 程式人生 > >java 如何隨機生成(取出)一個數組中的一個數,並且一次取一個直到取

java 如何隨機生成(取出)一個數組中的一個數,並且一次取一個直到取

問題描述

我想得到的是特定數,可能不是連續的,而且 數是取出的。

程式碼

private static int[] randomCreate(int [] rands) {
		int[] outArr = new int[rands.length];//創造一個用於接收的陣列 
 		for (int i = 0; i < rands.length; i++) {
 			int temp = (int) (Math.random() * (8-i));// 生成隨機下標
			outArr[i] = rands[temp];
			rands = removeArrays
(rands,temp);//將出現的刪除 } return outArr; } private static int[] removeArrays(int[] a,int i) { int [] newArray = new int[a.length-1]; //建立一個新陣列來代替原來的陣列 a[i] = a[a.length-1];//將陣列最後一個值賦給要刪除的值 newArray = Arrays.copyOf(a, a.length-1);//複製陣列除掉最後一個 return newArray; }
分析程式碼

我們現在可以生成不連續的隨機數,甚至可以去掉我們的陣列中的元素。