如何访问类的特定实例的值?

时间:2019-03-06 02:49:12

标签: java class

比方说我们有这个课:

public class Thing {
    public int myInt;

    public Thing(int x, int y){
    // some code here
    }
}

这里还有另一个班级:

public class anotherClass{
    ArrayList<Thing> thingList = new ArrayList<Thing>();

    public static void main(String[] args) {
        Thing thing = new Thing(1,0);
        Thing thing = new Thing(0,1);

        thingList.add(thing);

        System.out.println(thingList); // this prints [Thing@538e82g2, Thing@9g3s1f53]
    }
}

我的问题是,如何才能在实际的工作代码中执行以下操作:

Thing@9g3s1f53.myInt = 10;
Thing@538e82g2.myInt = 15;

如果这不可能,那么最接近的解决方案是什么?

1 个答案:

答案 0 :(得分:1)

不可能。看起来像9g3s1f53的东西是对象的哈希码,而不是指针/内存地址或类似的东西。特别是,哈希码(1)不是唯一的,如果对象不是不可变的,则(2)可以更改。

相关问题