调用java方法时出现语法错误(新手)
这两个答案都解决了这个问题。非常感谢,我为它的简单而感到尴尬 很抱歉发布了这样一个基本的问题,谢谢您抽出时间 在顶部的菜单方法中,我希望调用两种不同的方法来完成基于输入的操作。我在任何地方都找不到如何调用void方法 我不知道为什么第二个不起作用,因为我之前用过类似的东西调用java方法时出现语法错误(新手),java,object,methods,syntax-error,bluej,Java,Object,Methods,Syntax Error,Bluej,这两个答案都解决了这个问题。非常感谢,我为它的简单而感到尴尬 很抱歉发布了这样一个基本的问题,谢谢您抽出时间 在顶部的菜单方法中,我希望调用两种不同的方法来完成基于输入的操作。我在任何地方都找不到如何调用void方法 我不知道为什么第二个不起作用,因为我之前用过类似的东西 public void CheckOutMenu(ArrayList basket ) { choice = 0; while ( choice !=4 ) { Scanner in =
public void CheckOutMenu(ArrayList basket )
{
choice = 0;
while ( choice !=4 ) {
Scanner in = new Scanner ( System.in);
{
switch(in.nextInt()){
//print the number of items in the basket
case 1:
//working
break;
case 2:
//dont know how to call on option 2 the listBasket method
break;
case 3:
//to call the method
//error and wont compile
double totalCost = CalcTotalCost(totalCost = 0);
//printing what the method returns
System.out.print("The total price of your basket is £" );
break;
case 4:
choice = 4;
break;
default:
System.out.println("please enter a whole number that represents you're choice");
}
}
}
}
protected void listBasket(ArrayList basket )
{
//code inside works fine
}
public double CalcTotalCost(double total, ArrayList basket)
{
//code inside works fine
return total;
}
可以像调用任何其他方法一样调用void方法,但不必对返回值做任何处理,因为没有返回值
case 2:
listBasket(basket);
break;
对于第三种情况,如果要将0作为double传递,则必须同时传递double和ArrayList,而不能只传递double文本
你的错误就在这里,我相信你知道:
double totalCost = CalcTotalCost(totalCost = 0);
但是,您的CalcTotalCost方法定义如下:
public double CalcTotalCost(double total, ArrayList basket)
您已经发送了总数,但还没有发送篮子。两件事:1请格式化您的代码;这会节省你和其他人的时间。2错误到底是什么?错误消息总是试图告诉您出了什么问题。
public double CalcTotalCost(double total, ArrayList basket)