gpt4 book ai didi

java - 使用输入和数组列表时遇到问题

转载 作者:行者123 更新时间:2023-12-01 15:35:32 24 4
gpt4 key购买 nike

我遇到麻烦了。我试图允许用户输入另一个文件中方法的参数。然而它给了我两个错误。谁能帮帮我吗

public int countItem(Item purchase)
{
int quantity = 0;
if(cart.indexOf(purchase) == -1)
quantity = 0;
else
quantity = purchase.getQuantity() ;

return quantity;
}

这是我的第二个文件。

 System.out.println ("What item do you want to find?");
purchase = input.nextline(); //ERROR ERROR
System.out.println("You have " + basket.countItem() + purchase + "soup in your cart."); // ERROR

这些是我遇到的错误。

 --------------------Configuration: <Default>--------------------
F:\School\CS I AP\Chapter 7\Shopping Cart Lab\Shop.java:71: error: cannot find symbol
purchase = input.nextline();
^
symbol: variable purchase
location: class Shop
F:\School\CS I AP\Chapter 7\Shopping Cart Lab\Shop.java:71: error: cannot find symbol
purchase = input.nextline();

我还意识到我遇到了第三个错误。

error: method countItem in class ShoppingCart cannot be applied to given types;

最佳答案

Java 编译器似乎找不到变量 purchase。有几种情况:

  1. Item 类位于另一个文件夹中,尚未导入。 (非常常见的错误)

  2. 变量purchase尚未声明。

  3. 变量名称、变量声明或方法名称中存在拼写错误。

从您的错误来看,您似乎没有声明变量purchase。它应该是:
String buy = input.nextLine();

还有,你打错字了。它应该是 nextLine() 而不是 nextline()

请记住,您需要将 purchase 对象从 String 转换为 Item 对象,因为您的 countItem( ) 方法仅接受 Item 对象。 Scanner 类中的 nextLine() 方法仅返回一个 String 对象,您不能将其直接强制转换为 Item > object 否则你会得到另一个编译器错误。 例如,如果您有一个新 Item 对象的构造函数,该对象接受 String:

Item item = new Item(purchase); 
int count = itemCount(item);

至于你的第三个错误,你已经声明了 countItem() 方法来接受 Item 类型的一个参数,但在你的代码中你调用它时没有任何参数,因此编译器会提示它。

关于java - 使用输入和数组列表时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8921175/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com