![](/img/trans.png)
[英]How to replace a value in an ArrayList (with multiple columns) with a new value, in JAVA
[英]Replace in a Arraylist with more Columns
因此,对于分配,我需要替换ArrayList中的Element。 例如,我有一个团队班
class Team {
int id, int points;
String name;
}
我需要在列表中找到团队的ID,然后用新的积分替换积分。 我知道我可以使用list.get(i).id获取ID的索引,但是我不知道如何替换那里的Points。 我知道有一个list.set()命令,但是我没有找到如何替换ArrayList中团队的积分,因为set命令不接受“ i”作为参数。 已经提前谢谢
我想您有一个Team对象的ArrayList,并且您想更改具有特定ID的团队的积分吗?
为此,您可以执行以下操作:
for(int i = 0; i < yourlist.size(); i++)
if (yourlist.get(i).id == yourID)
yourlist.get(i).points += 1;
break;
列表中的每个元素都是一个Team
。 如您所说,首先您需要获取具有要更改其积分的Team
ID的元素Team
。 为此,您需要以某种方式遍历列表并找到此类元素。 注意,因为List<T>.Get(int i)
将给出存在于列表索引i
的元素,而不是ID为i
的Team
。 然后,要设置Team
的要点,可以直接分配一个值,或者更好的是定义和使用setter方法。 List<T>.Set(int i, T elem)
取代了Team
在索引i
,为Team elem
,所以它不应该是你想要做的,是什么points
,你想改变的东西,可以直接在列表中已经存在的实例上更改。 要使用Set
,您必须创建一个新的Team
实例,并用一个新的points
值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.