Java:为什么没有String#containsIgnoreCase?

时间:2012-10-11 22:33:19

标签: java

多年来,我想知道为什么课程containsIgnoreCase中没有方法String。我们有equalsequalsIgnoreCase,但只有contains而没有containsIgnoreCase。这有什么理由吗?

2 个答案:

答案 0 :(得分:4)

真的不可能说出具体原因是什么。也许有人认为equals的使用频率高于contains,因此实施equalsIgnoreCase方法最有用,但实施containsIgnoreCase并非有用。 。无论如何,很难确定。话虽如此,您确实可以根据原始contains方法轻松实现自己的方法,这些方法可以有效:

String s1 = "HeLlO WoRlD";
String s2 = "llo worl";
System.out.println(s1.toLowerCase().contains(s2.toLowerCase()));  // true

答案 1 :(得分:1)

String类中有几种方法,它们是 indexOf,lastIndexOf,startsWith,EndWith IgnoreCase 的潜在候选者。

但我认为, toUpperCase toLowerCase 会使IgnoreCase方法有一天过时,这可能就是原因。