黑马程序员技术交流社区

标题: 分享一个问题,如何生成创建一个数组,满足以下条件: [打印本页]

作者: 湛泸007    时间: 2015-9-11 00:49
标题: 分享一个问题,如何生成创建一个数组,满足以下条件:
数组为int[ ]类型,包含10个元素,这些元素为10到30之间的随机数,且均不重复,请问如何实现?

代码实现:

import java.util.Random;

public class RandomBornTool {

        public static int[] randomArrayBornTool(int startNumber, int endNumber,
                        int length) {

                int[] arr = new int[length];
                Random r = new Random();
                arr[0] = r.nextInt(endNumber - startNumber+1) + startNumber;
                int m = 1;
                while (m < length) {
                        int temp = r.nextInt(endNumber - startNumber+1) + startNumber;
                        boolean flag = true;
                        for (int n = 0; n < m; n++) {
                                flag = (flag && (arr[n] != temp));
                        }
                        if (flag) {
                                arr[m] = temp;
                                m++;
                        }
                }

                return arr;
        }
}
作者: kevin986745    时间: 2015-9-11 08:32
不错,很详细




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