System.out.println(1 - 0.7); 打印结果问题,这么会是:0.30000000000000004 ?

问题描述

System.out.println(1 - 0.3 );System.out.println(1 - 0.7 ); System.out.println(1 - 0.8 ); System.out.println(1 - 0.9 ); 打印的结果是: 0.70.300000000000000040.199999999999999960.09999999999999998 谁知道原因吗?

解决方案

java中默认浮点数的加减,返回的double型 这和数据类型的精度有关

时间: 2024-10-31 04:00:08

System.out.println(1 - 0.7); 打印结果问题,这么会是:0.30000000000000004 ?的相关文章

Myeclipse不打印Servlet里面的System.out.println,请看图片

问题描述 断点打了,在System.out.println("hhhhhhhhhhhhhhhhh");的下一行但是控制什么都不打印,只在Servlet不打印,重新写个主方法控制台会打印 解决方案 本帖最后由 o564296982 于 2014-12-15 16:18:06 编辑解决方案二:神奇的错误!!?楼主是不是选的控制台不对啊!就是右下角的那个窗口样的东西!解决方案三:头疼,试了很多方法解决方案四:引用1楼zxs6587的回复: 神奇的错误!!?楼主是不是选的控制台不对啊!就是右下

为什么 System.out.println(1-0.1*9);的答案

问题描述 System.out.println(1-0.1*9);输出的结果按数学来算结果是:0.1 如果按从左到右来算也是8.1但为什结果是0.09999999999999998 这是为什么了,这是什么运算???????????????? 解决方案 首先2进制无法精确显示0.10.1 你用ieee的浮点数标准怎么表示? 后52个字节是小数,第一个字节是符号,后面11个字节是阶码.2的负几次方的和加到一起是0.1? 答案是没有.楼主试一下 2.0-0.5这样的,算出来就是精确的了.因为0.5是2

java中用System.out.println输出的同一行中"\t”和“\t"间距竟然不一样?

问题描述 这是程序源码:public class BeerSong{public static void main(String[] args){int beerNumber=99;String word="bottles";while(beerNumber>0){ if(beerNumber==1) { word="bottle"; } System.out.println(beerNumber+"t"+word+"t"

java io系列17之 System.out.println("hello world")原理

我们初学java的第一个程序是"hello world" 1 public class HelloWorld { 2 public static void main(String[] args) { 3 System.out.println("hello world"); 4 } 5 } 上面程序到底是怎么在屏幕上输出"hello world"的呢?这就是本来要讲解的内容,即System.out.println("hello world

System.out.println() 和 log4j 的 Logger 循环输出100万次。

log4j配置参考: http://javapub.iteye.com/blog/866664 循环代码如下 system循环.       耗时,11691 package com; public class TestStaticClassMain { public static void main(String[] args) { long start = System.currentTimeMillis() ; for (int i = 0; i < 1000000; i++) { Sys

请解释一下:System.out.println(data)

问题描述 println()不是静态方法,为啥能这样用?out.println(data)请各位详解一下:System.out.println(data),谢谢啦 解决方案 解决方案二:为毛要知道这个?解决方案三:因为out是个对象参考api:http://dlc.sun.com.edgesuite.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html/zh_CN/api/index.htmlpublicstaticfina

java代码-JAVA语言,{System.out.println(&amp;amp;quot;x=&amp;amp;quot;+x);}这大括号可以去掉?去掉有什不好

问题描述 JAVA语言,{System.out.println("x="+x);}这大括号可以去掉?去掉有什不好 class Qi111 { public static void main(String[] args) { for (int x=0;x<=100 ;x++ ) { if (x%7==0) {System.out.println("x="+x);} } } } 解决方案 可以去掉,没有什么不好.if 后面就一行,不会引起歧义.如果多行,最好加上{

单单在程序方法体结束时的 System.out.println() 是什么意思???

问题描述 单单在程序方法体结束时的 System.out.println() 是什么意思??? 解决方案 System.out.println()方法System.out.println方法的使用eclipse快速输入System.out.println的方法 解决方案二: 这是为了换行println有换行的效果,这样每执行一次就可以很清楚的看出来 解决方案三: 换行的意思,可以更清楚的看到输出内容 解决方案四: 因为print只打印在一行,所以用println可以在每个Student信息打印后

java-public Tom(String s) { this(); System.out.println(&amp;amp;quot;I am &amp;amp;quot; + s); 的this为什么不是作用,谢谢

问题描述 public Tom(String s) { this(); System.out.println("I am " + s); 的this为什么不是作用,谢谢 class Jerry { public Jerry() { System.out.println("Jerry"); } public void hello() { System.out.println("Hello in Jerry"); } } class Tom exte