刚开始学习JAVA,最近在自己做一个 猜数字 小游戏。感觉获得4个不同随机数 是本程序的关键。之前在网上搜了些获取随机数的方法,但由于自己对JAVA理解尚浅,所以都不太能读懂。于是自己就已有知识,想了一个获得不同随机数的算法。
我就以从0—9中选4个不同随机数为例。
int[] anArray = new int[10];
for(int i = 0;i<10;i++)
{
anArray[i] = i;
}
int[] rand = new int[4];
for(int i = 0 ; i < 4 ;)
{
int j = (int)( Math.random() * 10);
if(j < (10- i))
{
rand[i] = anArray[j];
anArray[j] = anArray[9-i];
anArray[9-i] = rand[i];
i++;
}
自我感觉本算法能推广到取一定范围内的不同随机数。在效率上感觉还是比较快的。
时间: 2024-10-03 03:55:00