在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







