java怎么找到两个数组相同

java 中查找两个数组中相同元素的方法有:1. 使用 set 集合存储第一个数组的元素,遍历第二个数组并检查是否存在于 set 中;2. 使用两个指针比较数组元素,相等则记录为相同元素,不等则分别移动指针。

java怎么找到两个数组相同

Java 中查找两个数组中相同元素的方法

Java 中,可以使用以下方法查找两个数组中相同的元素:

1. 使用 Set

  • 使用 Set 集合存储第一个数组中的所有元素。
  • 遍历第二个数组中的每个元素,并检查它是否存在于 Set 中。
  • 如果存在,则它是一个相同元素。

示例代码:

立即学习“Java免费学习笔记(深入)”;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;

public class FindSameElements {

    public static void main(String[] args) {
        int[] arr1 = {1, 2, 3, 4, 5};
        int[] arr2 = {3, 4, 5, 6, 7};

        Set<Integer> set = new HashSet<>(Arrays.asList(arr1));

        for (int element : arr2) {
            if (set.contains(element)) {
                System.out.println("相同元素:" + element);
            }
        }
    }
}

2. 使用两个指针

  • 将两个指针都设置为指向数组的第一个元素。
  • 比较两个指针指向的元素。
  • 如果相等,则它是一个相同元素。
  • 如果第一个指针指向的元素小于第二个指针指向的元素,则将第一个指针向后移动。
  • 如果第一个指针指向的元素大于第二个指针指向的元素,则将第二个指针向后移动。

示例代码:

立即学习“Java免费学习笔记(深入)”;

public class FindSameElements {

    public static void main(String[] args) {
        int[] arr1 = {1, 2, 3, 4, 5};
        int[] arr2 = {3, 4, 5, 6, 7};

        int i = 0;
        int j = 0;

        while (i < arr1.length && j < arr2.length) {
            if (arr1[i] == arr2[j]) {
                System.out.println("相同元素:" + arr1[i]);
                i++;
                j++;
            } else if (arr1[i] < arr2[j]) {
                i++;
            } else {
                j++;
            }
        }
    }
}

以上就是java怎么找到两个数组相同的详细内容,更多请关注硕下网其它相关文章!