控制台()中的java.lang.System错误

时间:2012-05-19 12:50:31

标签: java

public class ABC{
    public static void main(string... as)
    {
        char i;
        i = System.console().readLine("Hi ");
        System.out.println(i);
    }
}

我在这段代码中收到错误。

错误是: - 在java.lang.System中找不到console()。

如果我放一些常量,那么代码就能正常工作。

请帮帮我。 提前致谢

3 个答案:

答案 0 :(得分:5)

使用可用的scanner课程。

以下是示例

import java.util.Scanner;

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

        //
        // Read string input for username
        //
        System.out.print("Username: ");
        String username = scanner.nextLine();

        //
        // Read string input for password
        //
        System.out.print("Password: ");
        String password = scanner.nextLine();

        //
        // Read an integer input for another challenge
        //
        System.out.print("What is 2 + 2: ");
        int result = scanner.nextInt();

        if (username.equals("admin") 
                && password.equals("secret") && result == 4) {
            System.out.println("Welcome to Java Application");
        } else {
            System.out.println("Invalid username or password, " +
                    "access denied!");
        }
    }
}

答案 1 :(得分:1)

您没有可用的控制台(并非在所有环境中都可用),因此请勿使用它。相反,为什么不使用Scanner对象呢?有关详情,请查看Scanner Tutorial

答案 2 :(得分:-2)

使用java.util.Scanner或InputStreamReader。

   Scanner sc=new Scanner(System.in);
   sc.nextLine();

   BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
   br.readLine()