在上海乐字节学习Java的第十七天

2020-11-11  本文已影响0人  天上的小仙女呀

关于随机数的一个Java面试题目

题目内容为:
创建一个长度为6的int型数组,取值为1-30,并且元素值各不相同

思路:第一个数字不用管(因为没有数字和它重复),从第二个元素开始,依次比较与前面数字是否相同,如果相同则重新生成一个新的随机数,下面为实现代码;

🌂很简单,一眼就能看懂(Eg:如果没看懂,评论区评论下,我会解释的,不过应该不存在这个问题)

`package de1;

public class Test {

    public static void main(String[] args) {
        //创建数组
        int[] array = new int[6];
        for(int i=0;i<array.length;i++) {
            //保证了数组里的数在[1,30]之间
            array[i] = (int)(Math.random() * 30) + 1;
            //判断是否与前面的数字相同,若相同则重新给当前数组元素赋值
            for(int j=0;j<i;j++) {
                if(array[i]==array[j])
                    i--;
                    break;
            }
        }
        
        //遍历数组
        for(int x:array) {
            System.out.println(x);
        }
        
    }
}` 

当然,遍历数组还有另外一种方式,两种方式是等价的;

`for(int i=0;i<array.length;i++) {
            System.out.println(array[i]);
        }` 
上一篇 下一篇

猜你喜欢

热点阅读