Arrays.equal() - 在Java 9中,Arrays.equals()方法添加了几个重载方法。新方法为提供的两个数组添加了fromIndex和toIndex参数。这些方法根据它们的相对索引位置检查两个数组的相等性。
Syntax
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();
}
}
登录后复制
Output
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.
Syntax
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.
Example
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));
}
}
登录后复制
Output
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.
Syntax
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.
Example
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));
}
}
登录后复制
Output
-1
2
-1
2
0
登录后复制
以上就是在Java 9中,Arrays类新增了哪些新方法?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!