为了使我的代码更干净,我想知道是否可以将扫描器输入分离到另一个方法。然而,当我这么做的时候,我遇到了很多错误,无法完成任务。
主要代码:
public static void main(String[] args){
Task taskObject = new Task();
taskObject.taskInput();
taskObject.taskOutput(id, keyword, price);
}
任务类代码:
import java.util.Scanner;
public class Task{
public task taskInput(){
Scanner scan = new Scanner(System.in);
System.out.println("\nEnter the id: ");
int id = scan.nextInt();
System.out.println("\nEnter the keyword: ");
String keyword = scan.nextLine();
System.out.println("\nEnter the price: ");
double price = scan.nextDouble();
return task(id, keyword, price);
}
public void taskOutput(int id, String keyword, double price){
System.out.println(id);
System.out.println(keyword);
System.out.println(price);
}
}
1条答案
按热度按时间1tuwyuhd1#
id
,keyword
以及price
局部变量在taskInput
,并且在方法终止后无法与它们关联。一种可能的方法是Task
对象有状态,并将其另存为成员: