JSP中System.out.println()与out.println()区别

1.out.println()输出到客户端。

    在out.println()中,out是response的实例,是以response为对象进行流输出的,即将内容输出到客户端。

    如果在JSP页面中使用System.out.println(),在客户端只会输出一个空格。

2.System.out.println()打印在控制台当中。


    System.out.println()用的是标准输出流,这个是输出在控制台上的,而JSP不是控制台程序。不管是在JSP还是在JAVA程序中,                      System.out.println()都是打印在控制台上。 如果想打印在页面,简单点的方法是:
    out.print( "要打印的内容" ); 

3.特殊例子:

System.out.println(1-0.1*9); 
输出的结果按数学来算结果是:0.1  如果按从左到右来算也是8.1 
但为什结果是0.09999999999999998  这是为什么了,这是什么运算????????????????

答:首先 ,

2进制无法精确显示0.1 


0.1 你用ieee的浮点数标准怎么表示? 后52个字节是小数,第一个字节是符号,后面11个字节是阶码。2的负几次方的和加到一起是0.1? 答案是没有。楼主试一下 2.0-0.5这样的,算出来就是精确的了。因为0.5是2的-1次方。0.75这样的 2(-1)+2(-2)都是可以精确表示的。。。。如果你想让2.0-0.1准确的话,用bigdecimal来做即可。 


编译器在处理一个数据时,当一种类型数据无法用二进制数精确表示时,只能按照一种规则去找一个数代替(比如取最接近这个数的二进制数代替 )


如果想让他精确可以这样 :

  1. System.out.printf("%.1f",2.0-1.1);    

如有疑问,请留言。

如觉得有帮助,请点个赞,谢谢!

原文地址:https://www.cnblogs.com/chendezhen/p/9173222.html