【发布时间】:2023-03-31 00:39:01
【问题描述】:
我正在尝试从一种方法获取用户输入并在另一种方法中使用它。我对这个错误感到困惑,因为它们都是 int 类型。
public static void move()
{
System.out.println("What do you want to do?");
Scanner scan = new Scanner(System.in);
int userMove = scan.nextInt();
}
public static void usersMove(String playerName, int gesture)
{
int userMove = userMove.move(); //error is here
if (userMove == -1)
{
break;
}
【问题讨论】:
-
move() 的返回类型为 void,设为 int 并返回值。
-
@Sudhanshu - 即使这样也是错误的。您不能在原始数据类型上调用方法。
-
我假设 userMove 是一个对象,否则你是对的。可能是他把帖子里的名字弄乱了。
-
其实OP想调用
move()方法来获取userMove的值,也就是int。一定对如何调用该方法感到困惑,因此,错误。 -
是的,即使 move() 也需要返回该值并将其返回类型更改为 int。
标签: java compiler-errors int dereference