这是我的问题:
我有一个方法,其中一个参数是扫描仪缺点,如下所示:
public void buyIngredients (Scanner cons){}
它的确有效,但错误主要在于:
import java.util.Scanner;
public class Main{
public static void main(String [] args){
Hero h = new Hero();
Scanner scan = new Scanner(System.in);
int value = scan.nextInt();
System.out.println(h.buyIngredients(value));
错误是这样的:
Main.java:11: error: method buyIngredients in class Hero cannot be applied to given types;
System.out.println(h.buyIngredients(value));
^
required: Scanner
found: int
reason: actual argument int cannot be converted to Scanner by method invocation conversion
答案 0 :(得分:2)
您的方法buyIngredients
需要Scanner
,但您已通过int
,这是不正确的。改为通过Scanner
:
System.out.println(h.buyIngredients(scan));
答案 1 :(得分:1)
您的buyIngredients (Scanner cons)
需要Scanner
个对象。在您的代码中,您传递的是value
int
。您无法为特定对象输入int
。
答案 2 :(得分:1)
您的buyIngredients(Scanner cons)
方法需要使用扫描仪作为参数。我怀疑它应该改为buyIngredients(int cons)
,但除非我能看到方法体,否则我无法知道。