如何在Java中获得用户输入

扫描仪下一个例子

在Java中,我们可以使用java.util.Scanner从控制台获取用户输入。

1.扫描仪

1.1读一行。

UserInputExample1.java
package com.mkyong;

import java.util.Scanner;

public class UserInputExample1 {

    public static void main(String[] args) {

		// auto close scanner
        try (Scanner scanner = new Scanner(System.in)) {

            System.out.print("Enter something : ");

            String input = scanner.nextLine();  // Read user input

            System.out.println("User Input : " + input);

        }

    }
}

输出量

Enter something : hello world
User Input : hello world

1.1读取不同的数据类型

UserInputExample2.java
package com.mkyong;

import java.util.Scanner;

public class UserInputExample2 {

    public static void main(String[] args) {

        try (Scanner scanner = new Scanner(System.in)) {

            System.out.println("Please enter your name : ");
            String name = scanner.next(); // get string

            System.out.println("Please enter your age : ");
            int age = scanner.nextInt(); // get integer

            System.out.println("Please enter your salary : ");
            double salary = scanner.nextDouble(); // get double

            System.out.format("Name : %s, Age : %d, Salary : %.2f", name, age, salary);
        }

    }
}

输出量

Please enter your name : 
mkyong
Please enter your age : 
38
Please enter your salary : 
9000
Name : mkyong, Age : 38, Salary : 9000.00

2. InputStreamReader + BufferedReader

2.1替代解决方案。

package com.mkyong;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class UserInputExample {

    public static void main(String[] args) throws IOException {

        try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {

            System.out.println("Please enter your name : ");
            String name = br.readLine();

            System.out.println("Please enter your age : ");
            int age = Integer.parseInt(br.readLine());

            System.out.println("Please enter your salary : ");
            double salary = Double.parseDouble(br.readLine());

            System.out.format("Name : %s, Age : %d, Salary : %.2f", name, age, salary);

        }

    }
}

输出量

Please enter your name : 
Steve Jobs
Please enter your age : 
56
Please enter your salary : 
1.00
Name : Steve Jobs, Age : 56, Salary : 1.00

参考文献

翻译自: https://mkyong.com/java/how-to-get-user-input-in-java/

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值