Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将这些扫描仪导入到另一个类中?_Java_String_Java.util.scanner - Fatal编程技术网

Java 将这些扫描仪导入到另一个类中?

Java 将这些扫描仪导入到另一个类中?,java,string,java.util.scanner,Java,String,Java.util.scanner,同样,我对Java非常陌生,这里有以下代码: 最终包装 导入java.util.Scanner 公共阶级地位{ public static void main(String[] args) { // TODO Auto-generated method stub Scanner MyPos = new Scanner(System.in); System.out.println(" Enter Position: "); String Pos = MyPos.ne

同样,我对Java非常陌生,这里有以下代码: 最终包装

导入java.util.Scanner

公共阶级地位{

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner MyPos = new Scanner(System.in);
    System.out.println(" Enter Position: ");
    String Pos = MyPos.nextLine();
    System.out.println("Position: "+Pos);

    Scanner MyMains = new Scanner(System.in);
    System.out.println("Enter Mains: ");
    String Mains1 = MyMains.nextLine();
    System.out.println("Mains: "+Mains1);

    Scanner WScore = new Scanner(System.in);
    System.out.println("Enter Ward Score: ");
    String score = WScore.nextLine();
    System.out.println(" Average Ward Score is:"+score);
    }
}

我很好奇是否有一种方法可以将我所有的3个扫描器导入到另一个类中,而不移动这个类中的所有实际代码?我试图将其移动到的类是一个名为“Player.java”的类。我的代码没有任何问题,但请随时提供额外的输入,以帮助我理解和改进代码!

您不需要为每个变量安装新的扫描仪。您需要做的是在使用完扫描仪后关闭它()

您认为扫描仪本身与一个变量相关联,而实际上它与系统相关联

因此,每次需要另一个变量时,只需执行以下操作:

Scanner sc = new Scanner(System.in);

String firstThing = sc.nextLine();
String secondThing = sc.nextLine();

sc.close(); // Do this when you're done storing input from System.in!
一旦你声明了你的扫描器。我不确定你为什么要将扫描器传递给另一个类。你可以轻松地将你从扫描器中获取的变量传递到一个播放器对象中

只要执行
Player p1=new Player(stringYouScanned);
假设您的Player类中有一个接受字符串的构造函数

或者,查找getter和setter方法。然后您可以执行类似的操作:`p1.setPosition(4);'(您可以将4替换为扫描的int,这样您就知道了)

如果出于某种原因,您希望扫描播放机内的输入,我只需初始化一个新的扫描仪,但请确保在处理完输入后执行
sc.close();