黑马程序员技术交流社区

标题: 随机选学生 [打印本页]

作者: wangjie    时间: 2015-10-7 12:33
标题: 随机选学生
import java.util.Random;
class Test_Random1 {
        public static void main(String[] args) {
                Random random = new Random();
                int num=10;                                    //随机抽查10个学生的座位号,用数组存储
                int[] arr = new int[num];        
                for (int i=0;true&&arr[num-1]==0 ;i++ ) {     //如果数组没存够10个 就一直循环,直到存够为止,(int[]数组默认值为0)
                        int x = random.nextInt(85)+1;             //1-85的随机数 比如座位号
                        int index=getIndex(arr,x);                //去除重复的数 ,查找生成的x是否已存在数组中
                        if (index==-1) {                            //如果没有存在,则存进数组
                                arr[i]=x;
                        }else{                                     //否则下标i减一,防止数组下标越界
                                i--;
                        }
                }
                printArr(arr);                                //打印
        }
        
        //查找某个数在数组中出现的第一个位置
        public static int getIndex(int[] arr,int key) {
                int index=-1;
                for (int j=0;j<10&&arr[j]!=0 ;j++ ) {
                                if(arr[j]==key){
                                        index=j;
                                        break;
                                }
                }
                return index;
        }
        //打印数组
        public static void printArr(int[] arr) {
                for (int i=0; i<arr.length; i++){
                        if(i!=arr.length-1)  {      //只要不是数组中最后一个数,就加上逗号.
                                System.out.print(arr[i]+",");
                        } else {                         //输出最后一个数时就不用加上逗号了
                                System.out.print(arr[i]);
                       }
                }
        }
}




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