我正在编写一个涉及名为Player
的对象的大型程序。播放器定义如下:
public class Player
{
public static String name;
public static Item inventory[] = new Item[10];
public static int items;
/* ... */
public void addItem(String itemName, int itemType)
{
if ((items + 1) <= 10) {
inventory[items] = new Item(itemName, itemType);
items++;
}
}
public void removeItem(int x)
{
for (int i = x; i < items; i++)
inventory[i] = inventory[i+1];
}
}
我现在正在添加广告资源处理,因为它比以后添加更容易,但inventory
直到开发后不久才会被使用。我无法看到removeItem
是否有效。我修改了一个名为strstrip
的函数来实现这个... removeItem
会工作吗?如果没有,为什么?
答案 0 :(得分:1)
为您的课程创建单元测试,特别是如果您要构建“大而复杂的程序”。这将保证您编写的代码将在以后工作,如果您更改代码,单元测试的失败应指示问题。单元测试还使您能够检查您的方法是否按预期工作。
根据其他评论,考虑使用List接口而不是数组,除非你有一些特定的要求(我无法想象)。当然,你班上的{{1}}字段看起来很可疑。
编辑
仅表示代码的外观以及如何从main方法调用方法。
{{1}}