Home > Java > JavaBase > body text

What is the use of java compareto method

青灯夜游
Release: 2023-01-13 00:39:56
Original
17214 people have browsed it

In java, the compareTo() method is used to compare the Number object with the parameters of the method. The syntax format is "variable 1.compareTo(variable 2)"; the compareTo() method starts from the first position of the value. Compare, if different characters are encountered, return the difference in ASCII values ​​of the two characters.

What is the use of java compareto method

The operating environment of this tutorial: windows7 system, java8 version, DELL G3 computer.

compareto method in java

compareTo() method is used to compare a Number object with the parameters of the method. Can be used to compare Byte, Long, Integer, etc.

The compareTo method starts comparing from the first character. If it encounters different characters, it immediately returns the difference in ASCII values ​​of the two characters. The return value is of type int

Example

#1. Return the difference between the ASC codes of the two strings before and after the comparison, If the first letters of the two strings are different , then this method returns the difference value of the ASC code of the first letter

String a1 = "a";
String a2 = "c";        
System.out.println(a1.compareTo(a2));//结果为-2
Copy after login

2. That is, if the two strings participating in the comparison first If the characters are the same, compare the next character until there is a difference, and return the ASC code difference of the different characters,

String a1 = "aa";
String a2 = "ad";        
System.out.println(a1.compareTo(a2));//结果为-3
Copy after login

3. If the two strings are not the same length and the characters that can be compared are exactly the same, the length difference of the two strings will be returned

String a1 = "aa";
String a2 = "aa12345678";        
System.out.println(a1.compareTo(a2));//结果为-8
Copy after login

4. Returning a positive number means a1>a2, returning a negative number means a1

5. Number types cannot be used with compareTo , nt cannot be compared with int using the compareTo method, directly use greater than (>) less than (<) or equal to (==) is not equal to (!=) Just compare

int num1 = 4;
int num2 = 5;        
num1.compareTo(num2);//Cannot invoke compareTo(int) on the primitive type int
Copy after login

You can first convert your int type variable into String and then compare

int num1 = 4;
int num2 = 5;        
        
//parse int to String    
System.out.println((num1+"").compareTo(num2+""));//-1
System.out.println(new Integer(num1).toString(). compareTo(new Integer(num2).toString()));//-1
System.out.println(String.valueOf(num1).compareTo(String.valueOf(num2)));//-1
Copy after login

6.compareToIgnoreCase ignores case

Does not consider case and compares two strings in dictionary order. This method returns an integer whose sign is the sign of the call to compareTo using a normalized version of the string whose case difference has been resolved by calling Character.toLowerCase(Character.toUpperCase(character) for each character) ) can be eliminated.
Note that this method does not take into account the locale, so it may produce suboptimal ordering in some specific locales. The java.text package provides Collators to accomplish locale-sensitive sorting.

7. Int types can be compared directly, so compareTo comparison is not used. If the declaration is Date, String, Integer, or others, compareTo comparison can be used directly,

Integer n1 = 5;
Integer n2 = 6;
System.out.println(n1.compareTo(n2));//-1
Copy after login

Recommended related video tutorials: Java video tutorial

The above is the detailed content of What is the use of java compareto method. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template