0

以下方法始终返回 NULL:

public SalesItem findItem(String itemCode){

        // to be implemented
        Cart cart = new Cart();
        SalesItem[] item;
        item = new SalesItem[1];
        item[0] = null;

        for (int i = 0; i < size -1; i++) {
          if (itemCode.equals(items[i].getItemCode())) {
            item[0] = items[i];
            System.out.println("Item - " + item +" is added to the shopping cart.");
            cart.addItem(items[i]);
          }

          else {
            item[0] = null;
          }
        }
        return item[0];

有谁知道我的代码有什么问题?

4

2 回答 2

2

如果您的 for 循环检查的最后一项与该项不匹配,则您设置item[0]为 null。

然后你返回item[0]

所以for循环是没有意义的。您可能应该在找到该项目时退回该项目。

于 2013-05-16T01:50:28.830 回答
1

你已经做了那个 item[0]=null 并且你正在将 itemCode 与 item[0] 进行比较,这等于 null 这就是为什么它总是返回 null。

于 2013-10-27T10:55:44.627 回答