gpt4 book ai didi

java - 比较字符串时使用 equals 或 contentEquals

转载 作者:行者123 更新时间:2023-12-02 13:56:14 25 4
gpt4 key购买 nike

我可以看到 contentEquals 对于比较字符序列很有用,但我找不到任何地方指定比较两个字符串时最好使用哪种方法。

Here提到了两种方法之间的差异,但没有明确说明如何处理两个字符串。

我可以看到 usng contentEquals 的一个优点是,如果传入的变量的类型发生了更改,则会抛出编译错误。缺点可能是执行速度。

在比较字符串时我应该始终使用 contentEquals 还是仅在有扩展 CharSequence 的不同对象时才使用它?

最佳答案

在比较两个字符串的内容时,应该使用String#equals。仅当其中一个对象不是 String 类型时才使用 contentEquals

1)它不那么困惑。每个 Java 开发人员都应该知道该方法在做什么,但 contentEquals 是一种更专业的方法,因此鲜为人知。

2) 它更快,正如您在 contentEquals 的实现中看到的,它在检查序列是否为 AbstractStringBuilder 类型后调用 equals > 这样您就可以节省该检查的执行时间。但即使执行速度会较慢,这也不应该成为您做出决定的首要考虑点。首先要考虑可读性。

关于java - 比较字符串时使用 equals 或 contentEquals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58933927/

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