Quelle est la Chaîne de classes compareTo() de retour de méthode

Dans l'API Java sur les oracles site web: "compareTo Retourne: "la valeur 0 si la chaîne de l'argument est égal à cette chaîne; une valeur inférieure à 0 si la chaîne est lexicographiquement inférieur à l'argument de chaîne; et une valeur supérieure à 0 si la chaîne est lexicographiquement plus de l'argument chaîne." "

Ici est une instruction if:

String a = "abd";
String b = "abc";

if(a.compareTo(b) >= 1)

retourne true
depuis que la chaîne a est plus grand, de manière lexicographique.

Ma question est, ne l'compareTo retourne toujours 0, 1, ou -1? ou faut-il retourner le réel montant que la chaîne est plus grand ou plus petit que l'argument chaîne.

Ainsi, dans le ci-dessus si relevé, puisque "abd" est plus grand que "abc" est-il de retour 1?

  • Il suffit de l'essayer : System.out.println(a.compareTo(b))
  • docs.oracle.com/javase/7/docs/api/java/lang/...
  • Ces réponses ne sont pas à l'abri; la valeur de retour (bien que presque toujours -1, 0 ou 1) est dépendant de l'implémentation.
  • Vous ne devriez pas prendre plus que ce que dit la documentation, et de la documentation dit: 0, inférieure à 0 ou supérieure à 0. Vous pouvez regarder la mise en œuvre, mais sur un autre Java mise en œuvre, il pourrait être différente et votre programme ne fonctionnera pas.
InformationsquelleAutor cupojava | 2013-09-14