Java中输入的用法

来源:互联网 发布:编程入门教材 编辑:程序博客网 时间:2024/05/22 18:13
Java中输入

1、 读取输入
1)构建一个Scanner,附属到System.in
Scanner in = new Scanner(System.in);
此时可以使用Scanner类的各种方法来读取输入。例如:nextLine方法来读取一行输入
System.out.print("What is your name?");
String name = in.nextLine();

nextLine():    读取的一行中可能包含空格
next():           读取单个单词。
nextInt():       读取一个整数。
nextDouble():读取一个浮点数

例如:String firstName = in.next();
           int age = in.nextInt();

Scanner类包含在java.util包中,因此在使用时,在程序开始处,输入import java.util.*;

注:Scanner不适合用于从终端读取密码,因为输入的文本对于任何人是可见的。在Java SE6中引入了Console类用于该目的。用如下代码来读取密码:
Console  cons = System.console();
String username = cons.readLine("User Name:");
char[] passwd = cons.readPassword("Password: ");
为安全起见,password返回的是一个字符数组,而不是一个字符串。
Console对象用于输入处理不像Scanner一样方便。Console对象一次只能读取一行。没有其他方法用于读取单个单词或数字。

例如:
import java.io.Console;import java.lang.System;import java.util.*;/** * This program demonstrates console input * @version 1.10 2014-8-5 * @author Administrator * */public class InputTest {public static void main(String[] args){Scanner in = new Scanner(System.in);// get first inputSystem.out.print("What is your name?");String name = in.nextLine();// get second inputSystem.out.print("How old are you?");int age = in.nextInt();// display output to consoleSystem.out.println("Hello, " + name + ". New year you will be " + (age + 1));Console  cons = System.console();if(cons != null){System.out.print("User Name:");String username = cons.readLine();System.out.print("Password: ");char[] passwd = cons.readPassword();}else{System.out.println("Console object is null");}}}

运行结果:




从以上结果可以看出,Console对象的输入必须在可交互式的终端运行才可以,在Eclipse中直接运行代码会出现console对象为null的问题。
0 0
原创粉丝点击