黑马程序员技术交流社区

标题: 在论坛上看到别人提的数组随机数的问题,回答他后想和..... [打印本页]

作者: 695212308    时间: 2016-8-11 22:05
标题: 在论坛上看到别人提的数组随机数的问题,回答他后想和.....
/*
* 题目:定义一个长度为10的数组,随机存储1-10的数据到里面,十个数据不能重复。求代码
*/
public class Test {
        public static void main(String[] args) {
                int[] arr=new int[10];
                arr[0]=(int)(Math.random()*(10))+1;
                a:for(int i=1;i<arr.length;i++){
                        outer:while(true){
                                int a=(int)(Math.random()*(10))+1;
                                for(int x=0;x<i;x++){
                                        if(a==arr[x]){
                                                continue outer;
                                        }
                                }
                                arr[i]=a;
                                continue a;
                        }
                }
                for(int i=0;i<arr.length;i++){
                        System.out.println(arr[i]);
                }
        }
}
请有更简洁的代码的学员回帖,好让大家参考
作者: 水月灬清影    时间: 2016-8-12 15:01
用集合做的,可能稍微简单些。

[Java] 纯文本查看 复制代码

import java.util.LinkedHashSet;

public class unReNum {
        public static void main(String[] args) {
               
                LinkedHashSet<Integer> lhs=new LinkedHashSet<Integer>();
               
                while(lhs.size()!=10){
                        int newNum = (int)(Math.random()*10)+1;
                        lhs.add(newNum);
                }
                for(Integer i:lhs){
                        System.out.println(i);
                }
        }
}

作者: 水月灬清影    时间: 2016-8-12 15:05
啊……写完之后才发现要数组………………




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2