
- Java Tutorial
- Java - Home
- Java - Overview
- Java - Environment Setup
- Java - Basic Syntax
- Java - Object & Classes
- Java - Constructors
- Java - Basic Datatypes
- Java - Variable Types
- Java - Modifier Types
- Java - Basic Operators
- Java - Loop Control
- Java - Decision Making
- Java - Numbers
- Java - Characters
- Java - Strings
- Java - Arrays
- Java - Date & Time
- Java - Regular Expressions
- Java - Methods
- Java - Files and I/O
- Java - Exceptions
- Java - Inner classes
- Java Object Oriented
- Java - Inheritance
- Java - Overriding
- Java - Polymorphism
- Java - Abstraction
- Java - Encapsulation
- Java - Interfaces
- Java - Packages
- Java Advanced
- Java - Data Structures
- Java - Collections
- Java - Generics
- Java - Serialization
- Java - Networking
- Java - Sending Email
- Java - Multithreading
- Java - Applet Basics
- Java - Documentation
- Java Useful Resources
- Java - Questions and Answers
- Java - Quick Guide
- Java - Useful Resources
- Java - Discussion
- Java - Examples
What are new methods have added to the Arrays class in Java 9?
Arrays class can contain various methods for manipulating arrays and also contains static factory methods that allow arrays to view as a list. Java 9 has added three important methods to Arrays class: Arrays.equals(), Arrays.compare() and Arrays.mismatch().
Arrays.equal() − In Java 9, few overloaded methods have added to the Arrays.equals() method. The new methods take fromIndex and toIndex parameters for the two provided arrays. These methods check the equality of the two arrays based on their relative index positions.
Syntax
public static boolean equals(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
In the above syntax, the method returns true if two specified arrays of ints and over the specified ranges are equal to another. The second method works the same for an array of chars.
Example
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
- Related Articles
- What are new methods added to the String class in Java 9?
- What are the new methods added to an Optional class in Java 9?
- What are the new methods added to Process API in Java 9?
- What are the new features added to Stream API in Java 9?
- Which factory methods have added for collections in Java 9?
- Which attributes have added to @Deprecated annotation in Java 9?
- What are Class/Static methods in Java?\n
- What are the conditions for Collection factory methods in Java 9?
- What are the changes of class loaders in Java 9?
- What are the rules for private methods in an interface in Java 9?
- What are the advantages of private methods in an interface in Java 9?
- What are the new features added in Python 3.10 version?
- How to pass Arrays to Methods in Java?
- What are the types of variables a class can have in Java?
- What are the differences between class methods and class members in C#?
