java.lang.NullPointerException - System.console()

时间:2015-07-16 14:39:21

标签: java nullpointerexception java.lang.class

我无法解决这个问题两个小时。请帮帮我。

我的代码

   package work.anart;
     import java.io.Console;
     public class Office {
         public static void main(String[] args) {
             Console cons = System.console();
             cons.printf("\n");
                 String nbook = "Notebook";
                 double price = 1.75;
             cons.printf(" 1 %10s worth %.2f euro \n", nbook, price);
             cons.printf(" 1 %10s worth %.2f euro \n", nbook, price);
         }
     }

生成

Exception in thread "main" java.lang.NullPointerException
    at work.anart.Office.main(Office.java:8)
Java Result: 1

2 个答案:

答案 0 :(得分:3)

你的程序对我来说运行良好没有任何错误。我认为你使用的版本比java 1.7少,请使用1.7或1.8,因为在java 1.7中引入了java.io.Console,我觉得你应该升级并检查一下控制台/终端上的简单代码。

答案 1 :(得分:1)

来自文档:

  

返回与当前Java虚拟>计算机关联的唯一Console对象(如果有)。

     

返回:系统控制台(如果有),否则为null。

我猜你没有任何与你的JVM关联的控制台。

但你可以像这样使用System PrintStream:

public static void main(String[] args){
    String nbook = "Notebook";
    double price = 1.75;
    System.out.printf(Locale.ENGLISH, " 1 %10s worth %.2f euro \n", nbook, price);
}