Open In App

Path compareTo() method in Java with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

The Java Path interface was added to Java NIO in Java 7. The Path interface is located in the java.nio.file package, so the fully qualified name of the Java Path interface is java.nio.file.Path. A Java Path instance represents a path in the file system. A path can use to locate either a file or a directory.path of an entity could be of two types one is an absolute path and the other is a relative path. The absolute path is the location address from the root to the entity while the relative path is the location address that is relative to some other path.
compareTo(java.nio.file.Path) method of java.nio.file.Path used to compare two abstract paths lexicographically. Two paths can be compared by this method. The ordering of paths defined by this method is provider-specific, and in the case of the default provider, platform specific. This method returns zero if the argument is equal to this path, a value less than zero if this path is lexicographically less than the argument, or a value greater than zero if this path is lexicographically greater than the argument. This method does not access the file system. There is no need for a file is required to exist. This method may not be used to compare paths that are associated with different file system providers.
Syntax: 
 

int compareTo(Path other)

Parameters: This method accepts a single parameter another path which is the path compared to this current path.
Return value: This method returns zero if the argument is equal to this path, a value less than zero if this path is lexicographically less than the argument, or a value greater than zero if this path is lexicographically greater than the argument.
Exception: This method throw and Exception ClassCastException if the paths are associated with different providers.
Below programs illustrate compareTo(java.nio.file.Path) method: 
Program 1: 
 

Java




// Java program to demonstrate
// Path.compareTo(Path) method
 
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
 
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
 
        // create object of Paths
        Path path1
            = Paths.get("D:","eclipse","configuration","org.eclipse.update");
 
        Path path2
            = Paths.get("D:","eclipse","configuration","org.eclipse.update");
       
        // compare paths
        int value = path1.compareTo(path2);
 
        // print result
        if (value == 0)
            System.out.println("Both are equal");
        else if (value < 0)
            System.out.println("Path 2 is greater "
                               + "than path 1");
        else
            System.out.println("Path 1 is greater "
                               + "than path 2");
    }
}


Output: 

Both are equal

 

Program 2: 

Java




// Java program to demonstrate
// Path.compareTo(Path) method
 
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
 
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
 
        // create object of Paths
        Path path1
            = Paths.get("D:","eclipse","configuration","org.eclipse.update");
 
        Path path2
            = Paths.get("D:\\temp\\Spring");
 
        // compare paths
        int value = path1.compareTo(path2);
 
        // print result
        if (value == 0)
            System.out.println("Both are equal");
        else if (value < 0)
            System.out.println("Path 2 is greater "
                               + "than path 1");
        else
            System.out.println("Path 1 is greater "
                               + "than path 2");
    }
}


Output

Path 2 is greater than path 1

References: https://docs.oracle.com/javase/10/docs/api/java/nio/file/Path.html#compareTo(java.nio.file.Path)
 



Last Updated : 25 May, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads