Maison  >  Article  >  Java  >  A quoi sert la méthode Java Compareto

A quoi sert la méthode Java Compareto

青灯夜游
青灯夜游original
2021-05-08 16:34:4717211parcourir

En java, la méthode compareTo() est utilisée pour comparer l'objet Number avec les paramètres de la méthode. Le format de syntaxe est "variable 1.compareTo (variable 2)" ; la première position de la valeur Compare, si des caractères différents sont rencontrés, renvoie la différence entre les valeurs ASCII des deux caractères.

A quoi sert la méthode Java Compareto

L'environnement d'exploitation de ce tutoriel : système Windows 7, version Java 8, ordinateur DELL G3.

méthode compareto en java

la méthode compareTo() est utilisée pour comparer un objet Number avec les paramètres de la méthode. Peut être utilisé pour comparer Octet, Long, Entier, etc. La méthode

compareTo commence la comparaison à partir du premier bit Si elle rencontre des caractères différents, elle renvoie immédiatement la différence des valeurs ASCII des deux caractères. La valeur de retour est de type int

. Exemple

1 Renvoie la différence entre les codes ASC des deux chaînes avant et après la comparaison, si la première. les lettres des deux chaînes sont différentes, alors cette méthode renvoie la différence entre les codes ASC de la première lettre

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

2. c'est-à-dire, si les deux chaînes participant à la comparaison en premier Si les caractères sont identiques, comparez le caractère suivant jusqu'à ce qu'il y ait une différence, et renvoyez la différence de code ASC des différents caractères,

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

3. Si les deux chaînes n'ont pas la même longueur et que les caractères pouvant être comparés sont exactement les mêmes, la différence de longueur des deux chaînes sera renvoyée

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

4. Renvoyer un nombre positif signifie a1>a2, renvoyer un nombre négatif signifie a11e185d2096a20612ff944e511d7ddb55) inférieur à (<) ou égal à (==) n'est pas égal à (! =) comparez simplement

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

Vous pouvez d'abord convertir votre variable de type int en String puis comparer

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

6.compareToIgnoreCase ignore la casse

Compare deux chaînes dans l'ordre lexicographique indépendamment de cas. Cette méthode renvoie un entier dont le signe est le signe de l'appel à compareTo en utilisant une version normalisée de la chaîne dont les différences de casse ont été résolues en appelant Character.toLowerCase(Character.toUpperCase(character) pour chaque caractère) ) peut être éliminée.
Notez que cette méthode ne prend pas en compte les paramètres régionaux et peut donc produire un classement sous-optimal dans certains paramètres régionaux spécifiques. Le package java.text fournit des Collators pour effectuer un tri en fonction des paramètres régionaux.

7. Les types Int peuvent être comparés directement, donc la comparaison compareTo n'est pas utilisée. Si la déclaration est Date, String, Integer ou autre, vous pouvez directement utiliser la comparaison compareTo,

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

Recommandations de didacticiels vidéo connexes :

Tutoriel vidéo Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn