Java中检查两个数组是否相等

x33g5p2x  于2022-10-06 转载在 Java  
字(1.8k)|赞(0)|评价(0)|浏览(669)

在这篇文章中,我们将写一个Java程序来检查两个数组的相等关系。

在这篇文章中,我们将看到三种编写逻辑的方法来检查两个数组的相等关系。

  • 使用一个迭代方法
  • 使用Arrays.equals(array1, array2)方法
  • 写出相等的通用方法

使用一个迭代方法

  1. public class CheckTwoArraysAreEqual {
  2. public static void main(final String[] args) {
  3. final int[] array1 = { 1, 2, 3, 4, 5 };
  4. final int[] array2 = { 1, 2, 3, 4, 5 };
  5. final boolean intCheck = equals(array1, array2);
  6. System.out.println("Two Integers are Equal :: " + intCheck);
  7. }
  8. public static boolean equals(final int[] a, final int[] a2) {
  9. if (a == a2)
  10. return true;
  11. if (a == null || a2 == null)
  12. return false;
  13. final int length = a.length;
  14. if (a2.length != length)
  15. return false;
  16. for (int i = 0; i < length; i++)
  17. if (a[i] != a2[i])
  18. return false;
  19. return true;
  20. }
  21. }

输出。

  1. Two Integers are Equal :: true

使用Arrays.equals(array1, array2) 方法

  1. import java.util.Arrays;
  2. public class CheckTwoArraysAreEqual {
  3. public static void main(final String[] args) {
  4. final int[] array1 = { 1, 2, 3, 4, 5 };
  5. final int[] array2 = { 1, 2, 3, 4, 5 };
  6. final boolean intCheck = Arrays.equals(array1, array2);
  7. System.out.println("Two Integers are Equal :: " + intCheck);
  8. }
  9. }

输出。

  1. Two Integers are Equal :: true

编写equals通用方法

  1. public class CheckTwoArraysAreEqual {
  2. public static void main(final String[] args) {
  3. final String[] s1 = { "Apple", "banana", "pinapale" };
  4. final String[] s2 = { "Apple", "banana", "pinapale" };
  5. final Integer[] array1 = { 1, 2, 3, 4, 5 };
  6. final Integer[] array2 = { 1, 2, 3, 4, 5 };
  7. final boolean strCheck = equals(s1, s2);
  8. System.out.println("Two Strings are Equal :: " + strCheck);
  9. final boolean intCheck = equals(array1, array2);
  10. System.out.println("Two Integers are Equal :: " + intCheck);
  11. }
  12. public static boolean equals(final Object[] a, final Object[] a2) {
  13. if (a == a2)
  14. return true;
  15. if (a == null || a2 == null)
  16. return false;
  17. final int length = a.length;
  18. if (a2.length != length)
  19. return false;
  20. for (int i = 0; i < length; i++) {
  21. final Object o1 = a[i];
  22. final Object o2 = a2[i];
  23. if (!(o1 == null ? o2 == null : o1.equals(o2)))
  24. return false;
  25. }
  26. return true;
  27. }
  28. }

输出

  1. Two Strings are Equal :: true
  2. Two Integers are Equal :: true

相关文章

最新文章

更多