console.java

来自「导出ORACLE数据库对象DDL语句的程序」· Java 代码 · 共 98 行

JAVA
98
字号
package com.icbcsdc.ddlexp.pub.util;
/**
 * An easy interface to read numbers and strings from standard input
 * 
 * @version 1.10 10 Mar 1997
 * @author Cay Horstmann
 */

public class Console {
    /**
     * print a prompt on the console but don't print a newline
     * 
     * @param prompt the prompt string to display
     */

    public static void printPrompt(String prompt) {
        System.out.print(prompt + " ");
        System.out.flush();
    }

    /**
     * read a string from the console. The string is terminated by a newline
     * 
     * @return the input string (without the newline)
     */

    public static String readLine() {
        int ch;
        String r = "";
        boolean done = false;
        while (!done) {
            try {
                ch = System.in.read();
                if (ch < 0 || (char) ch == '\n')
                    done = true;
                else if ((char) ch != '\r') // weird--it used to do \r\n
                                            // translation
                    r = r + (char) ch;
            } catch (java.io.IOException e) {
                done = true;
            }
        }
        return r;
    }

    /**
     * read a string from the console. The string is terminated by a newline
     * 
     * @param prompt the prompt string to display
     * @return the input string (without the newline)
     */

    public static String readLine(String prompt) {
        printPrompt(prompt);
        return readLine();
    }

    /**
     * read an integer from the console. The input is terminated by a newline
     * 
     * @param prompt the prompt string to display
     * @return the input value as an int
     * @exception NumberFormatException
     *                if bad input
     */

    public static int readInt(String prompt) {
        while (true) {
            printPrompt(prompt);
            try {
                return Integer.valueOf(readLine().trim()).intValue();
            } catch (NumberFormatException e) {
                System.out.println("Not an integer. Please try again!");
            }
        }
    }

    /**
     * read a floating point number from the console. The input is terminated by
     * a newline
     * 
     * @param prompt the prompt string to display
     * @return the input value as a double
     * @exception NumberFormatException
     *                if bad input
     */

    public static double readDouble(String prompt) {
        while (true) {
            printPrompt(prompt);
            try {
                return Double.parseDouble(readLine().trim());
            } catch (NumberFormatException e) {
                System.out.println("Not a floating point number. Please try again!");
            }
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?