递增整数的整数值?

2022-08-31 11:36:04

如何在Java中递增整数的值?我知道我可以用intValue获得值,并且我可以用新的Integer(int i)来设置它。

playerID.intValue()++;

似乎不起作用。

注意:玩家 ID 是使用以下内容创建的整数:

Integer playerID = new Integer(1);

答案 1

Integer对象是不可变的,因此一旦创建它们,就无法修改该值。您将需要创建一个新的并替换现有的。Integer

playerID = new Integer(playerID.intValue() + 1);

答案 2

正如Grodriguez所说,对象是不可变的。这里的问题是,您尝试增加玩家 ID 的值,而不是 ID 本身。在Java 5+中,你可以只写.IntegerintplayerID++

顺便说一句,永远不要调用 的构造函数。通过直接将 s 分配给 s 来利用自动装箱,例如 .这将透明地使用,这优于构造函数,因为它并不总是必须创建新对象。IntegerintIntegerInteger foo = 5Integer.valueOf(int)