我正在使用这段代码来获取数组中字符串的索引。
int n = Arrays.asList(Names).indexOf(textBox.getText());
这里的问题是,如果textBox 中的字符串在case 中与其在数组中的相似字符串不同。它返回 -1。在字符串比较的情况下,如何使其类似于 equalsIgnoreCase。
谢谢
最佳答案
您可以使用 Collator 类。在这里你可以为你的比较设置不同的级别。 您可以忽略大小写,并设置一些特定的语言字符。例如在德语中,它可以设置 ß 等于 ss。
这是一些纪录片: Collator class
编辑:这是给你的示例代码
private int indexOf(String[] original, String search) {
Collator collator = Collator.getInstance();
collator.setStrength(Collator.SECONDARY);
for(int i = 0;i<original.length;++i) {
if(collator.equals(search, original[i]))
return i;
}
return -1;
}
关于java - 使用 indexOf 时类似于 equalsIgnoreCase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13817413/