java2个数组怎么比较数组中有几个相同的数字?

java2个数组怎么比较数组中有几个相同的数字?题目如图

代码:

public class Test2 {

    public int produceRandom() {

        // 用户输入的数字与随机产生的兑奖号码相同的总数
        int sum = 0;

        // 放随机产生数字的数组
        int[] arrayInt = new int[5];

        // 放随机产生5个数字并且放在数组中
        for (int i = 0; i < 5; i++) {

            Random random = new Random();
            int ii = random.nextInt(22);
            arrayInt[i] = ii;

        }

        // 自己手动输入5个数字,每次输入的数字与数组中的所有数字比较
        for (int i = 0; i < arrayInt.length; i++) {

            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入第" + (i + 1) + "个数字:");
            int iii = scanner.nextInt();

            // 判断输入的数字与数组中数字的关系
            for (int j = 0; j < arrayInt.length; j++) {

                if (iii == arrayInt[j]) {

                    sum += 1
                } else {
                    sum += 0;
                }
            }
        }
        return sum;

    }

    public static void main(String[] args) {

        Test2 test2 = new Test2();
        int sum = test2.produceRandom();

        if (sum == 2) {
            System.out.println("用户输入的数字与随机产生的兑奖号码有" + sum + "个相同       " + "获4等奖");
        } else if (sum == 3) {
            System.out.println("用户输入的数字与随机产生的兑奖号码有" + sum + "个相同       " + "获3等奖");
        } else if (sum == 4) {
            System.out.println("用户输入的数字与随机产生的兑奖号码有" + sum + "个相同       " + "获2等奖");
        } else if (sum == 5) {
            System.out.println("用户输入的数字与随机产生的兑奖号码有" + sum + "个相同       " + "获1等奖");
        } else {
            System.out.println("sorry   没有获奖");
        }

    }
}

演示:

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-12-21
最简单的是遍历数组转List,List自带contains方法
相似回答