`
Chihom
  • 浏览: 6048 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java Puzzlers之二:找零时刻

阅读更多
同样简单
public class Change{
    public static void main(String args[]){
        System.out.println(2.0-1.10);
    }

}

由于double类型的不精确性,可能你的结果为0.8999999999999999.
可做以下修改
public class Change{
    public static void main(String args[]){
        System.out.println(new BigDecimal("2.0").subtract(new BigDecimal("1.10")));
    }

}

此处需注意
BigDecimal的实例对象是不可变型
   如果如下使用将得不到正确结果
  
   BigDecimal x=new BigDecimal("2.0");
   BigDecimal y=new BigDecimal("1.10");
   x.subtract(y);
   

   应该
  
   BigDecimal x=new BigDecimal("2.0");
   BigDecimal y=new BigDecimal("1.10");
   x=x.subtract(y);
   
分享到:
评论

相关推荐

    Java™ Puzzlers: Traps, Pitfalls, and Corner Cases.chm

    Java™ Puzzlers: Traps, Pitfalls, and Corner Cases.chm,英文版本,chm 格式,大小 1 Mb,作者:Joshua Bloch、Neal Gafter。 内容预览: Chapter 1. Introduction Chapter 2. Expressive Puzzlers Puzzle 1: ...

    JAVA PUZZLERS(JAVA 解惑)中英文

    这本书以其独特的“谜题”形式,通过一系列精心设计的问题,引导读者探索Java语言的深奥之处,并提供了解决这些问题的策略和技巧。 1. **谜题概念**:《JAVA PUZZLERS》的核心是通过谜题来激发读者对Java语言特性的...

    Java Puzzlers 中文版(Java解惑)

    Java Puzzlers 中文版(Java解惑) Java 谜题 1——表达式谜题 谜题 1:奇数性 下面的方法意图确定它那唯一的参数是否是一个奇数。这个方法能够正确运转 吗? public static boolean isOdd(int i){ return i % 2 == 1...

    Java Puzzlers完整中文版

    谜题 40:不情愿的构造器 尽管在一个方法声明中看到一个 throws 子句是很常见的,但是在构造器的声明 中看到一个 throws 子句就很少见了。下面的程序就有这样的一个声明。那么, 它将打印出什么呢?...

    java Puzzlers 中文版带完整目录

    本書包含了Java程式語言和核心函式庫中的各種謎題,任何具備使用Java經驗的讀者都可以看得懂,但是書裡有不少謎題的難度頗高,即便是對經驗豐富的Java程式設計師而言,都是一項挑戰,所以如果你解不出來,別覺得難過...

    Java puzzlers(java 解惑)附源码

    《Java Puzzlers》是一本深受Java开发者喜爱的书籍,由Joshua Bloch和Neal Gafter合著。这本书专门探讨了Java编程语言中容易让人迷惑的陷阱和常见误解,通过一系列精心设计的“puzzlers”(谜题)来揭示这些陷阱,并...

    Java Puzzlers(韩语版)

    Java Puzzlers(韩语版) 讲述了java中容易混淆的问题。 值得一看!

    java puzzlers code

    《Java Puzzlers Code:揭示编程之谜》 Java Puzzlers 是一套经典的Java编程难题集,由Joshua Bloch和Neal Gafter合著,旨在帮助开发者深化对Java语言特性的理解和避免常见的陷阱。这些“puzzlers”通过一系列精心...

    java puzzlers 中文版.doc

    java puzzlers 中文版

    <好书>java解惑(java puzzlers),过来挑战吧

    1. 类型转换:Java是一种静态类型语言,但类型转换时可能出现问题,如自动装箱拆箱可能导致的意外行为,或者是不恰当的强制类型转换导致的ClassCastException。 2. 对象引用:Java中的对象引用有时会让人迷惑,例如...

    Java解惑(谜题)CHM中英文双版本

    谜题2:找零时刻 谜题3:长整除 谜题4:初级问题 谜题5:十六进制的趣事 谜题6:多重转型 谜题7:互换内容 谜题8:Dos Equis 谜题9:半斤 谜题10:八两 Java谜题2——字符谜题 谜题11:最后的笑声 谜题12...

    java谜题中文版

    综上所述,`java_puzzlers`中文版中的这两个谜题,揭示了Java编程中容易忽视的细节,包括取余运算的符号敏感性和浮点数计算的不精确性。通过深入理解这些问题及其解决方案,开发者可以编写更加健壮和准确的代码。

    Java+Puzzlers(中英文并且带源码)

    5. **访问修饰符**:Java的public、private、protected和默认访问修饰符的使用有明确的规定,Puzzlers可能涉及它们在不同包中的可见性问题。 6. **异常处理**:Java的异常处理机制是一个重要的话题,Puzzlers可能...

    java-puzzlers-sampler_java_Joshua_

    1. **类型转换与自动装箱拆箱**:Java中存在基本类型与其对应的包装类,如`int`与`Integer`。自动装箱与拆箱可以简化代码,但也会引入一些问题,例如在循环中使用`Integer`而非`int`可能会导致内存泄漏。 2. **变量...

    java-puzzlers源代码

    1. **类型转换和自动装箱拆箱**:Java中的基本类型与对应的包装类之间可以进行自动转换,但这种转换可能隐藏着一些潜在的问题,如精度丢失、隐式转型等。 2. **变量作用域**:Java中变量的作用域是严格控制的,包括...

    java爱好者必备JAVA解惑(pdf格式)

    《JAVA解惑》是一本专为Java爱好者设计的书籍,旨在帮助读者解决在学习和使用Java过程中遇到的各种问题。这本书以PDF格式提供,方便电子阅读和保存。在深入探讨Java编程语言的过程中,它覆盖了从基础概念到高级特性...

    Java解惑(中文版)

    资源:Java解惑(中文版)、java puzzlers traps pitfalls,and Corner Cases 作者:Joshua Bloch Neal Gafter 版本:中文版 主要内容: Java解惑(英文版)—典藏原版书苑 目录 1 introduction 2 expressive ...

    Java解惑 清晰版带书签

    根据提供的文件信息,“Java解惑 清晰版带书签”这一标题暗示这是一本深入探讨Java编程语言中常见问题及解决方案的专业书籍。该书由《Effective Java》的作者所著,因此我们可以推断出这本书将包含许多实用的Java...

    java puzzlers

    JAVA解惑 中文和英文 Like many books, this one had a long gestation period. We've collected Java puzzles for as long as we've worked with the platform: since mid-1996, in case you're curious. In early...

Global site tag (gtag.js) - Google Analytics