在java中 如何随机排列几个数字
4个回答
展开全部
//在java中 如何随机排列几个数字
/**
* 对给定数目的自0开始步长为1的数字序列进行乱序
* @param no 给定数目
* @return 乱序后的数组
*/
public static int[] getSequence(int no) {
int[] sequence = new int[no];
for(int i = 0; i < no; i++){
sequence[i] = i;
}
Random random = new Random();
for(int i = 0; i < no; i++){
int p = random.nextInt(no);
int tmp = sequence[i];
sequence[i] = sequence[p];
sequence[p] = tmp;
}
random = null;
return sequence;
}
public static void main(String[] args) {
int[] num = getSequence(10);
for (int i = 0; i < num.length; i++) {
System.out.println(num[i]);
}
}
/**
* 对给定数目的自0开始步长为1的数字序列进行乱序
* @param no 给定数目
* @return 乱序后的数组
*/
public static int[] getSequence(int no) {
int[] sequence = new int[no];
for(int i = 0; i < no; i++){
sequence[i] = i;
}
Random random = new Random();
for(int i = 0; i < no; i++){
int p = random.nextInt(no);
int tmp = sequence[i];
sequence[i] = sequence[p];
sequence[p] = tmp;
}
random = null;
return sequence;
}
public static void main(String[] args) {
int[] num = getSequence(10);
for (int i = 0; i < num.length; i++) {
System.out.println(num[i]);
}
}
展开全部
随机排列?你取得0-8之间的不重负随机数就成
一个简单的例子
Set<Integer> set=new LinkedHashSet<Integer>();
while(true){
if(set.size() == 9){
break;
}
int a=(int) (Math.random()*9);
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
set.add(a);
}
for(int b:set){
System.out.println(b);
}
一个简单的例子
Set<Integer> set=new LinkedHashSet<Integer>();
while(true){
if(set.size() == 9){
break;
}
int a=(int) (Math.random()*9);
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
set.add(a);
}
for(int b:set){
System.out.println(b);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用Set
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String args[]) {
Random r = new Random();
int a[] = new int[7];
for (int j = 0; j < a.length; j++) {
a[j] = r.nextInt(9);
System.out.print("" + a[j]);
}
System.out.println("");
}
Random r = new Random();
int a[] = new int[7];
for (int j = 0; j < a.length; j++) {
a[j] = r.nextInt(9);
System.out.print("" + a[j]);
}
System.out.println("");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询