gpt4 book ai didi

用于调试或实际逻辑使用的 Java toString

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:15:41 25 4
gpt4 key购买 nike

这可能是一个非常基本的问题,如果有人问过这个问题,我们深表歉意。Java 中的 toString() 应该用于实际的程序逻辑还是仅用于调试/人类阅读。我的基本问题是当我需要在实际程序流中使用字符串表示时,应该使用 toString() 或编写一个名为 asString() 的不同方法。

我问的原因是我在 Web 服务中有一堆依赖 toString() 才能正常工作的类,在我看来,像 asString() 这样的东西会更安全。

谢谢

最佳答案

除少数特定情况外,toString 应该用于调试,而不是用于数据的生产流。

该方法有几个限制,使其不太适合在生产数据流中使用:

  • 不带任何参数,该方法不会让您轻松更改字符串表示以响应环境。特别是,很难以对当前语言环境敏感的方式格式化字符串。
  • 作为 java.Object 类的一部分,此方法通常被子类覆盖。这在您依赖于特定表示的情况下可能是有害的,因为子类的编写者可能不知道您的限制。

此规则的明显异常(exception)是 StringBuildertoString 方法和 StringBuffer类,因为这两个方法只是从相应对象的可变内容中生成一个不可变字符串。

关于用于调试或实际逻辑使用的 Java toString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19911290/

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