Arrays.equal() - 在Java 9中,Arrays.equals()方法添加了几个重载方法。新方法为提供的两个数组添加了fromIndex和toIndex参数。这些方法根据它们的相对索引位置检查两个数组的相等性。
public static boolean equals(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
在上述语法中,如果两个指定的int数组和指定的范围内的元素相等,则该方法返回true。第二个方法对于char数组也是一样的。
import java.util.Arrays; public class CompareArrayTest { public static void arrayEqualsTest() { int[] existRows = {0, 1, 2, 3, 4, 5}; int[] newRows = {3, 4, 5, 1, 2, 0}; System.out.println(Arrays.equals(existRows, newRows)); System.out.println(Arrays.equals(existRows, 1, 3, newRows, 3, 5)); System.out.println(Arrays.equals(existRows, 3, 5, newRows, 0, 2)); } public static void main(String args[]) { CompareArrayTest.arrayEqualsTest(); } }
false true true
Arrays.compare() − In Java 9, few parameters have added to the Arrays.compare() method. With fromIndex/toIndex parameters that are used for relative position comparison.
public static int compare(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
In the above syntax, the method compares two int arrays lexicographically over the specified ranges.
import java.util.Arrays; public class LexicographicalArraysTest { public static void main(String args[]) { LexicographicalArraysTest.compareSliceArraysTest(); } public static void compareSliceArraysTest() { int[] tomMarks = {5, 6, 7, 8, 9, 10}; int[] daisyMarks = {5, 6, 7, 10, 9, 10}; int[] maryMarks = {5, 6, 7, 8}; System.out.println(Arrays.compare(tomMarks, 0, 3, daisyMarks, 0, 3)); System.out.println(Arrays.compare(tomMarks, 0, 4, maryMarks, 0, maryMarks.length)); System.out.println(Arrays.compare(daisyMarks, 0, 4, maryMarks, 0, maryMarks.length)); } }
0 0 1
Arrays.mismatch() −In Java 9, there are other overloaded methods of the Arrays.mismatch() method that enables us to find and return the index of the first mismatch between two slices of arrays.
public static int mismatch(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
In the above syntax, the method finds and returns the relative index of the first mismatch between two int arrays over the specified range. It returns -1 if no mismatch has found. The index in the range of 0 (inclusive) up to the length (inclusive) of the smaller range.
import java.util.Arrays; public class MismatchMethodTest { public static void main(String[] args) { MismatchMethodTest.mismatchArraysTest(); } public static void mismatchArraysTest() { int[] a = {1, 2, 3, 4, 5}; int[] b = {1, 2, 3, 4, 5}; int[] c = {1, 2, 4, 4, 5, 6}; System.out.println(Arrays.mismatch(a, b)); System.out.println(Arrays.mismatch(a, c)); System.out.println(Arrays.mismatch(a, 0, 2, c, 0, 2)); System.out.println(Arrays.mismatch(a, 0, 3, c, 0, 3)); System.out.println(Arrays.mismatch(a, 2, a.length, c, 2, 5)); } }
-1 2 -1 2 0
以上就是在Java 9中,Arrays类新增了哪些新方法?的详细内容,更多请关注php中文网其它相关文章!
已抢186842个
抢已抢67389个
抢已抢353399个
抢已抢667818个
抢已抢123043个
抢已抢24656个
抢