如何创建一个方法来返回两个数组中的匹配值

时间:2015-11-27 09:23:18

标签: java arrays methods

我是编程新手,我正在尝试自学一些基本的编码技巧。

我已经开始尝试使用数组,并希望解决以下任务:

  

创建一个方法,该方法返回两个数组中的所有匹配值,并在控制台中显示这些匹配值。

到目前为止,我只创建了两个数组list1list2。我相信我需要使用for或while循环来查找每个数组中的匹配值,但我不确定如何执行此操作然后我需要做什么。

有人可以给我一些建议吗?

到目前为止,这就是我写的:

package project1;

public class Array {

    public static void main(String[] args) {
    int list1 [] = {1,2,55,8,7,9,60,4};
    int list2 [] = {3,12,1,71,4,6,1,10};
    }

}

4 个答案:

答案 0 :(得分:0)

你是对的,你必须创建一个循环来读取一个数组。

        public static void main(String[] args) {
        int list1 [] = {1,2,55,8,7,9,60,4};
        int list2 [] = {3,12,1,71,4,6,1,10};

        for (int i=0;i<list1.length;i++){
        System.out.println(list[i]);
//If you want to print any specific position put the position of the array that you want to print (taking into account that arrays start in 0 position):
  System.out.println(list[0]);
        }
        for (int j=0;i<list2.length;j++){
        System.out.println(list[j]);
        }

    }

那些简单的两个循环创建一个名为ij的整数,最初的值为0.在每个循环中,您将打印数组的每个位置,直到i和j达到数组的长度(list1.lengthlist2.length)。当循环打印第一个位置时,这些整数将其值增加到一个(i++ and j++)并打印下一个位置。

答案 1 :(得分:0)

请仔细阅读以下代码并尝试了解它。请参阅java文档,或者如果您使用的是像eclipse这样的IDE,请将鼠标悬停在函数上以获取有关该功能的说明。

public static void getMatchingElements(int[] array1, int[] array2) {

    for (int i = 0; i < array1.length; i++) {
        for (int j = 0; j < array2.length; j++) {

            if(array1[i] == array2[j]){
                System.out.println(array1[i]);
                break;
            }
        }
    }

}

上述算法非常简单。希望你能改进它。

答案 2 :(得分:0)

试试这个。

toString()

答案 3 :(得分:0)

好的,我想我现在明白了。您想要打印出list1和list2中存在的值。试试这个:

    public static void main(String[] args)
    {
        int list1 [] = {1,2,55,8,7,9,60,4};
        int list2 [] = {3,12,1,71,4,6,1,10};
        getMatchingValues(list1,list2);
    }
    public static void getMatchingValues(int[] list1, int[] list2)
    {
        for(int value1 : list1)
        {
            for(int value2 : list2)
            {
                if(value1==value2)
                {
                    System.out.println("Both lists contain "+value1);
                    break;
                }
            }
        }
    }