java - 这个生成了多少 Java 对象 - new String ("abcd")

标签 java string object

String s = new String("abcd");

最佳答案

实习生池中有一个字符串,每次运行代码时都会重复使用。

然后是每次运行该行时都会构造的额外字符串。例如:

for (int i = 0; i < 10; i++) {
    String s = new String("abcd");
}

最终将在内存中得到 11 个内容为“abcd”的字符串 - 一个 interned 和 10 个副本。

关于java - 这个生成了多少 Java 对象 - new String ("abcd"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5192574/

相关文章:

java - 如何有效地从服务中调用 Spring 存储库方法?

c - 用 strtok 分隔字符串

javascript - 如何在 Javascript 中将对象的方法作为参数传递

ios - 如何检查 NSArray 中的空对象

javascript - 无法通过解析获取 query.containedIn 查询中的 objectId?

java - 当 Java 写入 Windows Server 2016 时文件上次修改不更新

java - 在 SQL 准备语句中放入 javascript 变量 (java)

java - 如何将按钮 Action 监听器绑定(bind)到文本字段

字符串崩溃程序中的 C# 特殊字符

javascript - 为什么在 JavaScript 中 {} + {} 变为 "[object Object][object Object]"而 [] + [] 变为空字符串?