java - 数组引用

标签 java arrays

如果我创建一个变量数组:

public String a;
public String b;
public String c;

public String[] d = {a,b,c};

它将包含 {null, null, null};

如果我这样做:

a = "5";
System.out.println(d[0]);

输出将为 null,因为初始化 d 时,anull

有没有办法创建“引用数组”,以便本例中的输出为 5

编辑: 情节扭曲!

代码的第一部分位于某个类中。第二部分位于扩展第一部分的类中。

最佳答案

您可以使用自己的可变类包装String:

class MyString {
    private String value;

    public MyString(String value) {
        this.value = value;
    }

    void setValue(String value) {
        this.value = value;
    }

    @Override
    public String toString() {
       return value;
    }
}

现在:

public MyString a = new MyString(null);
public MyString b = new MyString(null);
public MyString c = new MyString(null);

public MyString[] d = {a,b,c};

...

a.setValue("5");  // <--

但是,在调用 setValue() 之前,您可能需要确保 a 不为 null

关于java - 数组引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20166718/

相关文章:

java - Java TableRowSorter 中的 NullPointerException

javascript - 将 JSON 操作为可观察数组集合

arrays - 如何为 pg_trgm `' term' % ANY (array_column)` 查询索引字符串数组列?

javascript - 非等于数组同时更改值javascript

java - 从类名数组创建类

java - 自定义数组列表按位置更改项目

java - 在Java中用图像制作视频文件?

java - 将 JSON 解析为对象

java - JComboBox 类型不是泛型

c - 使用一维数组计算矩阵值