Java 使用扫描仪进行多种不同的方法
我是Java新手,所以我正在练习一些简单的代码。我想创建一些方法并对所有方法使用Java 使用扫描仪进行多种不同的方法,java,Java,我是Java新手,所以我正在练习一些简单的代码。我想创建一些方法并对所有方法使用Scanner,但我不想每次创建其他新方法时都声明Scanner 这是我的代码。这是正确的吗?有更好的方法吗 import java.util.*; public class TripPlanner { public static final Scanner input = new Scanner(System.in); public static void main(String[] args
Scanner
,但我不想每次创建其他新方法时都声明Scanner
这是我的代码。这是正确的吗?有更好的方法吗
import java.util.*;
public class TripPlanner {
public static final Scanner input = new Scanner(System.in);
public static void main(String[] args) {
Greeting();
}
public static void Greeting() {
System.out.println("Welcome to Vacation Planner");
System.out.print("What is your name? ");
String name = input.nextLine();
System.out.print("Nice to meet you " + name +", where are you travelling to? ");
String place = input.nextLine();
System.out.println("Great! " + place + " sounds like a great trip" );
System.out.println("************");
System.out.println("\n");
}
}
是的,这将适用于同一线程中的不同方法 但是,需要注意的是,除非同步对扫描仪的访问,否则不能在不同的线程中使用它
如果您在不同的线程中需要它,那么为每个线程创建一个您永远不想将这样的有状态资源(或数据库连接)传递给多个方法,这会使您的整个应用程序无法调试交织的状态机。您要做的是使用策略模式(如我在副本中解释的)分派所获取的数据。