因此,如果我有两个字符串,我知道如果第一个字符串是ape
,第二个字符串是zebra
,而我说的是word1.compareTo(word2);
,则输出应该为负。
如何获得true
或false
的输出?
最佳答案
compareTo()返回一个小于,等于或大于零的数字,分别对应于第一个字符串在第二个字符串之前,相同或之后;因此,您可以使用任何关系运算符(==
,!=
,<
,<=
,>
,>=
)将结果与0进行比较,以测试特定顺序。
例如:
// Returns true only when word1 and word2 are in order or the same
return word1.compareTo(word2) <= 0;
和
// Do s1 and s2 need to be swapped?
boolean outOfOrder = s1.compareTo(s2) > 0;
if (outOfOrder) {
// swap s1 and s2
// ...
}
(请注意,比较为您提供了可以返回,分配给变量等的布尔值;您不需要
if (cond) { return true; } else { return false; }
。)关于java - compareTo()得到正确或错误的输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29595235/