如何使字符串比较不区分大小写?
2022-08-31 09:04:30
我创建了一个Java程序来比较两个字符串:
String str = "Hello";
if (str.equals("hello")) {
System.out.println("match");
} else {
System.out.println("no match");
}
它区分大小写。我怎样才能改变它,使它不是?
我创建了一个Java程序来比较两个字符串:
String str = "Hello";
if (str.equals("hello")) {
System.out.println("match");
} else {
System.out.println("no match");
}
它区分大小写。我怎样才能改变它,使它不是?
最好的方法是使用str.equalsIgnoreCase(“foo”)
。它专门针对此目的进行了优化。
您还可以在将两个字符串与 进行比较之前将其转换为大写或小写。这是一个技巧,对于可能没有等效项的其他语言来说,记住它很有用。equals
equalsIgnoreCase
str.toUpperCase().equals(str2.toUpperCase())
如果您使用的是非罗马字母,请注意JavaDoc的这一部分,其中说equalsIgnoreCase
请注意,此方法不考虑区域设置,并且将导致某些区域设置的结果不令人满意。类提供区分区域设置的比较。
用。String.equalsIgnoreCase()
使用 Java API 参考查找如下答案: