我正在尝试检查一个字符串是否按字母顺序排列在其他两个字符串之间。 目前我是这样做的:
if(_subSize.compareTo("440/65") > 0 && "600/65".compareTo(_subSize) < 0){
//fits in
} else { // fits not in between }
但是当我有 as _subSize = "440/65"; if 语句进入 else。我已经这样修复了:
if(_subSize.compareTo("440/65") >= 0 && "600/65".compareTo(_subSize) <= 0){
//fits in
} else { // fits not in between }
现在第一个陈述是正确的。然而,第二个陈述是错误的。 如何使第二个陈述也为真? 因为“440/65”按字母顺序排在“600/65”之前,所以从技术上讲它应该低于或等于 0。但不知何故它不起作用。
我需要字符串作为字符串。它们不是数字或其他东西。
最佳答案
第二个 .compareTo() 与第一个相反。你只需要让两者从相同的角度进行比较,如下所示:
if(_subSize.compareTo("440/65") >= 0 && _subSize.compareTo("600/65") <= 0){
//fits in
} else { // fits not in between }
关于java - 在 java 中比较字符串 compareTo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19634333/