优秀的编程知识分享平台

网站首页 > 技术文章 正文

7.Java获取用户输入

nanyue 2024-12-08 17:04:10 技术文章 7 ℃

获取用户输出

1.单个输出

有些程序需要用户输入。例如,一个游戏可能会要求用户输入昵称,并在游戏中显示出来;或者一个单位换算器可能会要求用户输入要转换的值。

在Java中,可以使用 Scanner 类来获取用户输入。以下是一个示例代码:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // 创建Scanner对象
        Scanner scanner = new Scanner(System.in);
        
        // 提示用户输入昵称
        System.out.print("请输入昵称: ");
        
        // 读取用户输入的昵称
        String nickname = scanner.nextLine();
        
        // 在游戏中展示用户的昵称
        System.out.println("您的昵称是: " + nickname);
        
        // 提示用户输入要转换的值
        System.out.print("请输入要转换的值: ");
        
        // 读取用户输入的值
        double value = scanner.nextDouble();
        
        // 进行转换操作(这里只是示例,具体转换逻辑需要根据实际需求编写)
        double convertedValue = value * 2;
        
        // 显示转换结果
        System.out.println("转换后的结果是: " + convertedValue);
        
        // 关闭Scanner对象
        scanner.close();
    }
}

在上述代码中,我们创建了一个Scanner对象来读取用户输入。首先,通过scanner.nextLine()方法获取用户的昵称输入,然后通过scanner.nextDouble()获取用户需要转换的值。根据实际需求,你可以在代码中添加相关的转换逻辑。最后,使用scanner.close()关闭输入流。

在Java中有多种方法可以进行输入。


要从用户获取输入,首先我们必须导入相应的类。使用以下语句来导入该类:

import java.util.Scanner;

这行代码应该写在你的代码的最顶部,在类声明之前。

导入了 Scanner 类,我们将用它来获取输入。


在导入 Scanner 类之后,我们需要创建一个 Scanner 对象:

Scanner sc = new Scanner(System.in);

对于这些新的术语感到困惑吗?类、对象、导入...别担心,你会在更高级的课程中学习到这些内容。现在,只需要记住创建 Scanner对象的语法即可。


填写下面的空白来创建一个有效的Scanner对象。

 ? scanner =  ? Scanner( ?.in);

现在我们准备好从用户获取输入并将其赋值给一个变量。 例如,要获取一个字符串输入,我们需要使用以下代码:

String input = scanner.nextLine();

在这里,我们使用 scanner.nextLine() 方法获取用户输入的一行文本,并将其存储在名为input的字符串变量中。这样,我们就可以在后续的代码中使用input变量来处理用户输入的字符串数据了。

运行代码以查看其工作原理。

import java.util.Scanner;

class Demo {
 public static void main(String[ ] args) {
  Scanner sc = new Scanner(System.in);
  String name = sc.nextLine(); 
  System.out.println("Name: "+name);  
 }
}

自己思考完成:填写下面的空白来创建一个有效的程序,该程序获取一个字符串输入。

? java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new ?(System.in);
        ? input = scanner.nextLine();
        System.out.println("You entered: " + input);
    }
}

类似地,我们可以使用 nextInt() 方法接受一个整数作为输入。下面是一个示例代码:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter an integer: ");
        int input = scanner.nextInt();
        System.out.println("You entered: " + input);
    }
}

在这个程序中,我们首先导入java.util.Scanner类,然后在main方法中创建了一个Scanner对象scanner用于获取用户输入。接下来,我们使用System.out.print方法输出提示用户输入一个整数的消息。然后,使用scanner.nextInt()方法获取用户输入的整数,并将其赋值给名为input的整数变量。最后,我们使用System.out.println方法输出用户输入的结果。你可以在运行程序时输入一个整数,然后程序会打印出你的输入。


这将从用户接受一个整数输入,并将其赋值给age变量。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter an integer: ");
        int age = scanner.nextInt();
        System.out.println("You entered: " + age);
    }
}

在这个程序中,我们首先导入java.util.Scanner类,然后在main方法中创建了一个Scanner对象scanner用于获取用户输入。接下来,我们使用System.out.print方法输出提示用户输入一个整数的消息。然后,使用scanner.nextInt()方法获取用户输入的整数,并将其赋值给名为 age 的整数变量。最后,我们使用System.out.println方法输出用户输入的结果。你可以在运行程序时输入一个整数,然后程序会打印出你的输入。


类似的方法可用于接受其他类型的输入:nextDouble()、nextFloat()、nextBoolean()。

以下是一个示例代码:

import java.util.Scanner;

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

        System.out.print("Enter a decimal number: ");
        double decimalNumber = scanner.nextDouble();
        System.out.println("Your decimal number is: " + decimalNumber);

        System.out.print("Enter a floating-point number: ");
        float floatingNumber = scanner.nextFloat();
        System.out.println("Your floating-point number is: " + floatingNumber);

        System.out.print("Enter a boolean value (true or false): ");
        boolean booleanValue = scanner.nextBoolean();
        System.out.println("Your boolean value is: " + booleanValue);
    }
}

在这个程序中,我们使用了java.util.Scanner类来接受不同类型的输入。我们首先创建了一个Scanner对象scanner。然后,我们使用scanner.nextDouble()方法接受用户输入的double类型的数值,并将其赋值给decimalNumber变量。接着,我们使用scanner.nextFloat()方法接受用户输入的float类型的浮点数,并将其赋值给floatingNumber变量。最后,我们使用scanner.nextBoolean()方法接受用户输入的布尔值,并将其赋值给booleanValue变量。

你可以在运行程序时依次输入相应类型的值,然后程序会打印出你输入的结果。

2.多个输入

你可以使用同一个Scanner对象来接受多个输入。例如,我们接受姓名和年龄作为输入,并将它们输出出来。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        System.out.print("Enter your name: ");
        String name = scanner.nextLine();
        
        System.out.print("Enter your age: ");
        int age = scanner.nextInt();
        
        System.out.println(name+": "+age);
    }
}

在这个示例程序中,我们使用了java.util.Scanner类来接受多个输入。我们首先创建了一个Scanner对象scanner。然后,我们使用System.out.print方法输出提示用户输入姓名的消息,并使用scanner.nextLine()方法获取用户输入的姓名,并将其赋值给名为name的字符串变量。

接下来,我们使用System.out.print方法输出提示用户输入年龄的消息,并使用scanner.nextInt()方法获取用户输入的整数年龄,并将其赋值给名为age的整数变量。

最后,我们使用System.out.println方法输出用户输入的姓名和年龄。

你可以运行这个程序,依次输入姓名和年龄,然后程序会打印出你输入的姓名和年龄。请注意,在输入年龄之后,按下回车键才能确认输入,并继续执行程序。


Java中获取用户输入的要点:

从用户那里获取输入的方法!以下是步骤:

  • 1.导入java.util.Scanner类。
import java.util.Scanner;
  • 2.创建一个Scanner对象:
Scanner sc = new Scanner(System.in);
  • 使用Scanner的相应方法来获取输入,例如:
int num = sc.nextInt();

练习:小费计算器

你要给账单金额的15%作为小费。 为了简化计算,你决定编写一个程序来自动计算小费。

任务:以账单金额作为输入,并输出对应的小费金额,即金额的15%。

要计算一个数的15%,可以将其乘以15,然后除以100。

以下是使用Java编写的程序示例: 输入金额可以是小数,因此从输入中获取一个双精度数(double)。

import java.util.Scanner;

public class TipCalculator {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入账单金额:");
        double billAmount = scanner.nextDouble();
        double tipAmount = (billAmount * 15) / 100;
        System.out.println("小费金额为:" + tipAmount);
        scanner.close();()
    }
}

在上述代码中,我们使用nextDouble()方法从用户输入中获取一个双精度数(double),并将其保存在billAmount变量中。

这样就可以正确处理小数形式的账单金额,计算得到的小费金额也会是一个合适的双精度数。

编译和运行这个程序时,你可以输入包含小数的账单金额,并得到正确的小费金额作为输出。


练习:填写以下空白部分,创建一个有效的程序,它以字符串和整数作为输入,然后输出一个欢迎消息。

?  java.util.Scanner;

public class WelcomeMessage {
    public static void ? (String[] args) {
        Scanner scanner = ?  Scanner(System.in);
        System.out.print("请输入你的名字:");
        String name = ? .nextLine();
        System.out.print("请输入你的年龄:");
        int age = scanner ? nextInt();
        System.?.println("欢迎你," + name + "!你今年" + age + "岁了。");
    }
}


最近发表
标签列表