【问题标题】:Do I have to make getter setters for each element of an array?我是否必须为数组的每个元素制作 getter setter?
【发布时间】:2020-03-30 08:03:27
【问题描述】:

我的数组是一个对象数组。我只有一个返回整个数组的 getter。但是,如果我想修改另一个类中数组元素的字段,我无法通过数组 getter 来完成。到目前为止,我发现的唯一解决方案是要么不将数组字段保留为私有,要么为数组的每个元素创建 getter/setter 方法。有没有更好的方法来做到这一点?

对于上下文,该数组是一个点数组。每个点都有一个x坐标和y坐标

例如,当我执行Line.getPoints().getX() 时,它不起作用。 Line.points[1].getX() 有效,但前提是不要将数组保密。

【问题讨论】:

  • 你试过了吗:setArray (Object[] array)setElement (int index, Object element)

标签: java arrays methods getter setter


【解决方案1】:

如何创建一个公共 getter 并执行 getPoints()[1].getX() 之类的操作 或 getPoints()[1].setLocation(2,3)

【讨论】:

  • 他想将数组中的一个元素(例如array[1])设置为一个值(例如array[1] = new Object();
  • @EldarB。他的问题不是在某个位置改变阵列的对象。他想知道如何改变物体在某个位置的场。而且他不知道他可以在返回数组的 getter 之后使用 '[x]' 表示法。
猜你喜欢
  • 2012-01-22
  • 1970-01-01
  • 2010-09-23
  • 2015-05-11
  • 2018-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多