比较java中的多个Integer数组

时间:2016-01-07 23:18:50

标签: java arrays if-statement

我试图比较两个阵列Ints。

这是我到目前为止所做的:

package array;

import java.util.Scanner;
import java.util.Arrays;

public class Array {

    public static void main(String[] args) {    

        Scanner input = new Scanner(System.in);            
        int [] lottery_number = new int[49];    
        int i;     
        int a = 0;
        for (i=0; i<lottery_number.length; i++){
            lottery_number[i]=i+1;
        }

        System.out.println("Please insert 6 numbers");     
        int [] Number = new int [6];    
        Number[0] = input.nextInt();
        Number[1] = input.nextInt();
        Number[2] = input.nextInt();
        Number[3] = input.nextInt();
        Number[4] = input.nextInt();     
        Number[5] = input.nextInt(); 
    }
}

我试图将用户输入与某些Lottery_number数组进行比较。

2 个答案:

答案 0 :(得分:0)

我指出我不确定你在问什么,但将彩票数字阵列(1到50之间的所有自然数字)与玩家选择数组(从1到6的6个随机数)进行比较是没有意义的50。 使用静态方法

Arrays.equals(int[] array1, int[] array2)

将返回参数是否等于(相同数量的元素,相同的值)但最终不是这种情况。对不起,如果我完全误解了你的要求。

答案 1 :(得分:-1)

numberInCommon是一个变量,表示数组共有多少个数字。我希望这是你正在寻找的东西。您必须导入java.util.Arrays

List lotteryNumbers = Arrays.asList(lottery_numbers);
int numbersInCommon = 0;
for(int i : Number){
    if(lotteryNumbers.contains(new Integer(i)))
        numbersInCommon++;
}
编辑:你还需要改变 int [] lottery_number = new int[49];
Integer [] lottery_number = new Integer[49];