在Java中比较字符串的最快方法是什么?
在Java中比较两个字符串最快的方法是什么?
有没有比平等更快的东西?
编辑:我不能帮助澄清问题。
我有两个按字母顺序排列且大小完全相同的字符串
示例:abbcee和abcdee
字符串最长为30个字符
回答:
我不认为 Sun
Oracle还没有String#equals()
最大程度地优化标准。因此,我希望它已经是最快的方法。如果您想了解他们如何实现它,请看一下它的源代码。这是摘录:
public boolean equals(Object anObject) { if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
以上是 在Java中比较字符串的最快方法是什么? 的全部内容, 来源链接: utcz.com/qa/400749.html