gpt4 book ai didi

java - 不区分大小写的字符串数组比较

转载 作者:行者123 更新时间:2023-11-30 03:39:27 25 4
gpt4 key购买 nike

我正在使用 Java 进行编码,我很清楚我可以使用 Arrays.equals 比较大多数数组,并且可以使用 String.equalsIgnoreCase 不区分大小写地比较字符串,但是有没有一种方法可以专门比较字符串数组,不区分大小写?

示例代码:

class Foo {
String[] array; // don't care about case

@Override
public boolean equals(Foo obj) {
// bunch of stuff to check equality
if (!Arrays.equals(array, obj.array)) return false; // case insensitive?
return true;
}
}

最佳答案

您的代码将无法编译,因为您没有重写对象的 equals 方法,该方法具有类似于 public boolean equals(Object obj)

的签名

还要进行比较,您可以在修改后的 equals 中执行以下操作:

if (array == foo.array) {
return true;
}

if (array == null || foo.array == null) {
return false;
}

int length = array.length;

if (foo.length != length)
return false;

for (int i=0; i<length; i++) {
String string1 = array[i];
String string2 = foo.array[i];
if (!(string1==null ? string2==null : string1.equalsIgnoreCase(string2)))
return false;
}
return true;

关于java - 不区分大小写的字符串数组比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27099903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com