java - java中固定大小内存分配的字符串数组

标签 java string

String str[] = new String[3];

谁能给我解释一下上面一行的内存映射。它将有多少对象和引用?

最佳答案

那一行分配了一个对象,它是一个包含三个字符串引用的数组。这些引用默认初始化为 null

它还将 str 定义为一个局部变量,其中包含对字符串数组的引用。它使用对刚刚创建的对象的引用来初始化变量。

所以你有这个图表:

str (local variable)
    +--------+             array object    
    |   -----+---------> +-------------+
    +--------+           |    null     | (can hold a reference to a String)
                         +-------------+
                         |    null     | (can hold a reference to a String)
                         +-------------+
                         |    null     | (can hold a reference to a String)
                         +-------------+

关于java - java中固定大小内存分配的字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28713826/

相关文章:

java - 运行时事件调度线程上的 Swing 验证代码

java - 使 WAR 像 JAR 一样可执行,以在应用程序之外提供命令行界面 (JBoss)

iphone - 动态、本地化 NSString

c++ - 为什么我不能删除字符串的数字字符?

java - 如何在不使用 -cp 开关的情况下在 Groovy 中自动加载数据库 jar?

java - 更新 TeamCity Server SSL 证书后断开 TeamCity Build Agent

c++ - 从字符串元素中提取整数值并相加

javascript - 在字符串中发送 "&"时遇到问题

java - gwt 可以与 java 以外的其他语言一起使用吗?

android - 如何将存储在字符串变量中的文本设置为粗体?