我有更新计数器的问题(整数值)。 这是班级的定义:
public class Item_Actions
{
private final int MAX_ITEMS = 100;
private Item myItem[];
private int counter;
public Item_Actions()
{
myItem = new Item[MAX_ITEMS];
counter++;
}
//Constructor add item into the menu (Description, type & price of Item)
public void addItem(Item itm)
{
myItem[counter] = itm;
counter++;
}.......
现在,每当我从另一个类调用addItem构造函数时,计数器始终保持为零。 导致它的原因以及如何在里面保存数据?
感谢
答案 0 :(得分:3)
只需在声明变量static
之前插入counter
关键字。那是
private static int counter=0;
答案 1 :(得分:2)
计数器应为static
- 您希望限制实例化的数量,因此计数器不应该是实例变量。相反,它应该是“全球性的” - 即static
。
您的数组也应该是static
。
您可以使用ArrayList
。
所有人都说,避免使用static
字段 - 而是在其他代码中查找问题。