当前位置: 代码迷 >> J2SE >> 施用Console的format()函数实现格式化输出
  详细解决方案

施用Console的format()函数实现格式化输出

热度:7758   发布时间:2013-02-25 00:00:00.0
使用Console的format()函数实现格式化输出
这是我们课本后的一道习题,代码如下:要求使用Console的format函数实现格式化输出
我看帮助文档,Console中format和printf用法一样,为什么我却运行不出来啊?您帮我调试下
import java.io.Console;
public class FormatDemo
{
public static void main(String[] args)
{
int i = 100;
boolean status = true;
String str="Welcome";
Console cons=System.console();
cons.format("%d %b %s",i,status,str);

}
}

运行提示这样的错误:
Exception in thread "main" java.lang.NullPointerException
at IntegerDemo.main(IntegerDemo.java:10)
请各位大神知道format的具体使用方法,有事例代码是最好的,,感恩不尽

------解决方案--------------------------------------------------------
当java程序是从cmd控制台中运行的时候,并且标准输入输出流没有被重定向过的话,console是存在的。当vm是自动运行的(应该是包含从ide运行这种情况,比如eclipse等等,system.console()返回的就是null),
所以cons == null会出现空指针异常。。。
------解决方案--------------------------------------------------------
跑控制台下去执行,不要在 IDE 的控制台中执行,要操作系统的控制台!
  相关解决方案