在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

回到顶部