Java:比较字符数组是否区分大小写?

标签 java

<分区>

我正在编写一个程序来将几个字符与 Char 数组进行比较并返回数组的索引。有什么可能的方法来比较忽略大小写吗? 例如下面:

String in = "I AM A HAPPY BOY";
char[] cha = new char[] {a,c,e,g,i,k,h,m,o,q,s,u,w,y};
char testChar = in.substring(4,5).charAt(0);

for(int a = 0; a<char.length; a++){
   if(cha[a] == testChar)
       return a+1;
}

我无法获取索引,因为它总是指向 0。这里有忽略大小写的方法吗?感谢一些建议。

最佳答案

对两个字符使用 Character.toLowerCase:

if (Character.toLowerCase(cha[a]) == Character.toLowerCase(testChar)) {
    // logic here
}

作为旁注,如果数组中的所有字符都已经是小写,则可以使用第一个 toLowerCase,甚至可以在初始字符串上使用 toLowerCase并避免两者。

关于Java:比较字符数组是否区分大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15772401/

相关文章:

java - Tomcat 8.0 不会以纯 Spring MVC 模板启动

java - 数据库作为 IPC 反模式

java - 在 Scala 中创建并填充二维数组

java - 实现帮助介绍java

java - JSON 发送 A 类进入 B 类

java - 反射从方法参数注释获取值

java - 更新游戏的两个线程?一种用于图形,一种用于游戏逻辑?

java - validator 接收空对象,为什么?

java - JNLP 应该使用特定的 Java 版本但错误结果

java - 从 pdf 内的 html 文本 block 访问内部 PDF 链接