根据用户输入更改对象的值

时间:2013-12-01 09:34:12

标签: java

我试图想办法改变一个对象的价值。我创建了一个类,其中包含set和get for the object,3种值为PRICE,QUANTITY和NAME。

价格和名称已在测试类中设置

System.out.println("How many would you like?");
String quantity = s1.nextLine();
quantity = food1.setQuantity();

quantity = food1.setQuantity();错误。
如何根据用户需要的数量进行更改?

3 个答案:

答案 0 :(得分:0)

您可以尝试:

quantity = food1.setQuantity(Integer.parseInt(quantity));

而不是:

quantity = food1.setQuantity();

答案 1 :(得分:0)

我并不是说听起来很苛刻,但编程并不神奇。看看你在做什么:

 String quantity = s1.nextLine();
 quantity = food1.setQuantity();

你用一个希望成为void集合方法的字符覆盖字符串。相反,该方法应该是void set方法,它接受一个整数,因此您将执行以下操作(假设正确的函数实现):

 String quantity = s1.nextLine();
 food1.setQuantity(Integer.parseInt(quantity));

不确定你是否学过了异常处理,但如果有的话,你应该把它包装在try / catch中。如果没有,您可以使用正则表达式来查看它是否为整数(如果有必要)。赔率是这是一个类赋值,您可能假设输入有效或使用异常处理。祝好运。

答案 2 :(得分:0)

假设数量应该​​是一个整数,你可以这样写:

String quanity = s1. nextLine();
//check that quanitity is a valid number before trying to parse it as a number
if(quantity.matches("\\d+"))
{
    food1.setQuantity(Integer.parseInt(quantity));
}else
{
    System.out.println("The quantity you entered is not a valid number.");
}