【发布时间】:2015-03-18 10:50:04
【问题描述】:
在 C# 中,我必须明确调用 String.Intern(string) 才能将字符串添加到实习生池。
Java 在概念上是否有相同的想法?那些处理频繁且可重复的字符串的人是否期望使用实习池来访问和解析字符串?
【问题讨论】:
-
Java 确实有内部字符串池的想法和 String 类中的方法 intern(),在这里查看。 intern()
标签: java
在 C# 中,我必须明确调用 String.Intern(string) 才能将字符串添加到实习生池。
Java 在概念上是否有相同的想法?那些处理频繁且可重复的字符串的人是否期望使用实习池来访问和解析字符串?
【问题讨论】:
标签: java
Java 使短期对象变得非常便宜。 Java 8 可以完全消除它们。实习它们的成本相当高,如果不小心使用,可能会减慢应用程序的速度。
对于长期对象,我们计划在 GC 上创建 char[],String 指的是“interned”。 String 对象本身不能自动实习,因为这可能会改变行为。
【讨论】: