Java简单的数据输入

来源:互联网 发布:苹果电话屏蔽软件 编辑:程序博客网 时间:2024/05/17 07:58

在Java中实现最简单的输入


通过args传入数组参数



  • 通过args传入数组参数,在控制台打印出数组。
public class Demo {    /**     * 从控制台输入     * @param args     */    public static void main(String[] args) {        for (int i = 0; i < args.length; i++) {            System.out.println(args[i]);        }    }}

在命令行中运行时后面加上参数

Java Demo 123

在Eclipse中运行中需要做运行配置

右键代码区->Run As->Run Configurations…

1


在Program arguments中输入参数

2


配置好之后运行即可

3


此时Console控制台中就打印出来数据了

4


使用System类


  • 在线API文档
http://www.apihome.cn/api/java/System.html

使用System类自带的接收命令进行输入

    /**     * 从键盘读取字符回来     * 运行之后程序会处于阻塞状态,用户需要输入一个字符,返回对应的ASCII码     * 每次运行只能读取一次     */    public static void test2() {        try {            int a = System.in.read();            //因为输入的是int类型,所以要做强制类型转换            System.out.println("我输入的字符是:" + (char)a);            System.out.println("对应的ASCII码是:" + a);        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }

5


使用数组输入输出

    /**     * 通过数组输入     * 打印所有的输入的内容     */    public static void test3() {        byte[] myArray  = new byte[10];        try {            System.in.read(myArray);            for (int i = 0; i < myArray.length; i++) {                System.out.println("我输入的字符是:" + (char)myArray[i]);                System.out.println("对应的ASCII码是:" + myArray[i]);                //System.out.println(myArray[i]);            }        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }


运行,这里我输入abc

6


分隔符在各个平台都不一样

Mac : \rLinux : \nWindows:\r\n符号       ASCII码      意义\n          10        换行NL\r          13        回车CR

使用数组输入字符串

    /**     * 输入一连串的数组     */    public static void test5() {        byte myArray[] = new byte[10];        try {            System.in.read(myArray);        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        System.out.println(new String(myArray));    }

7


从控制台输入数据

    /**     * 从控制台输入一行内容     */    public static void test6() {        System.out.println(System.console().readLine());    }


输入abcd并输出

8


从控制台输入密码

package com.lingdu;    /**     * 输入密码     */    public static void test8() {        if (System.console() != null) {            char password[]  = System.console().readPassword();            System.out.println(new String(password));        }else {            System.err.println("请不要在eclipse中执行 ");        }    }


如果我们在eclipse中运行则会提示错误信息

9

因为是获取控制台的输入,所以我们切换到控制台运行



注意:输入密码的时候是不可见的,这根Linux下登录时输入密码是一样的原理

10


使用Scanner类



这里简单介绍一下,后面会详细了解

通过扫描仪循环输入内容

    /**     * 从扫描仪输入内容     * 运行时程序进入阻塞状态,等待用户输入     */    public static void test7() {        Scanner scanner = new Scanner(System.in);        //如果有下一行则继续循环        while(scanner.hasNextLine()){            //输出每一行的数据            System.out.println(scanner.nextLine());        }    }

这时就可以循环输入内容了

11

0 0
原创粉丝点击