gpt4 book ai didi

java - 在 Java 中,什么时候我应该更喜欢 String 而不是 StringBuilder,反之亦然?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:20:30 26 4
gpt4 key购买 nike

我知道 StringBuilder 应该比 String 更受青睐,因为 String 将保存在常量字符串池中,并且为其分配新值不会覆盖以前的值。但是,StringBuilder 是一个覆盖其先前值的对象。

  • 在什么情况下我应该使用 String 而不是 StringBuilder,反之亦然。
  • 此外,如果我在 Hibernate 的支持类中有 String 类型的变量,我应该使用 StringBuilder 吗?怎么办?

    ...
    Result result = (Result) criteria.list().get(0);


    class Result{
    String name;
    String fname;
    ...
    }

最佳答案

你应该使用String,因为String objects are cached in an object pool如果您不更改它们,可能会提供更好的性能。

StringBuilder 仅在您继续连接 String 标记时才有用,这在规范化良好的数据库表中不应该是这种情况。

JVM 会进行各种优化,即使您使用串联,JVM 也可能将该例程重写为 StringBuilder 版本。

关于java - 在 Java 中,什么时候我应该更喜欢 String 而不是 StringBuilder,反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31022143/

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