Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.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 - Fatal编程技术网

用java编写代码

用java编写代码,java,Java,我正在尝试制作一个程序,允许用户输入他的名字、中间名和姓氏,但问题是,他可以选择不输入中间名,程序将计算出,在这种情况下,它应该只显示名字和姓氏。 问题是我想得到我的中间名扫描器的长度,并将其放入一个变量中,该变量允许我对两个if语句进行排序 以下是相关代码: import java.util.Scanner; public class Names { public static void main(String[] args){ System.ou

我正在尝试制作一个程序,允许用户输入他的名字、中间名和姓氏,但问题是,他可以选择不输入中间名,程序将计算出,在这种情况下,它应该只显示名字和姓氏。 问题是我想得到我的中间名扫描器的长度,并将其放入一个变量中,该变量允许我对两个if语句进行排序

以下是相关代码:

import java.util.Scanner; 

public class Names {

        public static void main(String[] args){
            System.out.print("Enter your name : ");
            Scanner first_name = new Scanner(System.in);
            System.out.print("Enter your middle name : ");
            Scanner middle_name = new Scanner(System.in);
            System.out.print("Enter your last name : ");
            Scanner last_name = new Scanner(System.in);
            int x = Integer.parseInt(middle_name);
            if(x == 0) {
                System.out.println("First name : " + first_name);
                System.out.println("Last name : " + last_name);
            }
            if(x > 0) {
                System.out.println("First name : " + first_name);
                System.out.println("Middle name : " + middle_name);
                System.out.println("Last name : " + last_name);
            }
       }
}

我想你想做的是:

有一台扫描仪可以读取不同的行

检查中间名称是否为isEmpty,并且只有三个System.out语句

public static void main(String[] args){
    Scanner in = new Scanner(System.in);

    System.out.print("Enter your name : ");
    String first_name = in.nextLine();
    System.out.print("Enter your middle name : ");
    String middle_name = in.nextLine();
    System.out.print("Enter your last name : ");
    String last_name = in.nextLine();

    System.out.println("First name : " + first_name);
    if(!middle_name.isEmpty()) {
        System.out.println("Middle name : " + middle_name);
    }
    System.out.println("Last name : " + last_name);

    in.close();
}

您的名称变量应该是字符串,而不是扫描器。为扫描器使用一个单独的变量,并利用该变量从用户处获取名称。您不需要三个单独的扫描器对象,只需一个即可。然后在需要输入时,在扫描仪上调用nextLine。