一关于精度损失 关于java对于0.05+0.01,1-0.42等计算的不准确原因是因为计算机是以二进制来储存一个数的,有的数从二进制转化到十进制时就会出现误差这就导致了计算的不准确,比如0.01在电脑里储存的其实是0.00999999999或者是其他的一个很接近0.01的数但是计算机毕竟是拿这个接 ...
分类:
其他好文 时间:
2017-10-08 00:18:50
阅读次数:
130
一.为什么double类型的数值进行运算得不到“数学上精确”的结果? double类型的数值只有64bit,由于后面舍去的位数会带来误差,所有无法得到“数学上精确”的结果. 二.以下代码的输出结果是什么? int X=100; int Y=200; System.out.println("X+Y=" ...
分类:
其他好文 时间:
2017-10-07 22:07:40
阅读次数:
105
public static void main(String[]args) { } public class InnerClass{ } } 很显然,这个是不行的。若为int,则main里边应该有返回值,而且返回值的类型为int类型 1.为什么java规定作为程序入口点的main() 方法静态的? ...
分类:
其他好文 时间:
2017-10-07 20:46:55
阅读次数:
108
1、 运行代码 2、为什么double类型的数值进行运算得不到“数学上精确”的结果? double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。 3、在构建BigDecimal对象时应使用字符串而不是dou ...
分类:
其他好文 时间:
2017-10-07 19:42:42
阅读次数:
166
第一个: 程序截图: 结论:可以有多个公有类 第二个: 程序截图: 第三个: 程序截图: 第四个: 为什么java规定作为程序入口点的main() 方法静态的? 静态方法可以直接用类名+方法名,不需要实例化对象 第五个: Java变量遵循“同名变量的屏蔽原则”,请课后阅读相关资料弄清楚相关知识,然后 ...
分类:
其他好文 时间:
2017-10-07 16:28:48
阅读次数:
119
问题1:一个Java类文件中真的只能有一个公有类吗?请使用Ecplise或javac检测一下以下代码,有错吗? 一个java类文件中只能有一个公有类。用Ecplise测试,当public类嵌套在public类内部时,只执行与文件名相同的public类,不报错但是不执行内部public;当两个publ ...
分类:
其他好文 时间:
2017-10-07 16:19:23
阅读次数:
154
详细的原理在IEEE 754浮点数标准 小数以二进制形式表示时的有穷性导致的, 这不是Python的问题,而是实数的无限精度跟计算机的有限内存之间的矛盾 计算机的内存、cpu寄存器等等这些硬件单元都是有限的,只能表示有限位数的二进制位,因此存储的二进制小数就会和实际转换而成的二进制数有一定的误差。( ...
分类:
编程语言 时间:
2017-10-07 16:12:58
阅读次数:
296
1.一个JAVA类中只能有一个public类,可以有多个类,但只能有一个public类,示例图如下: 2.JAVA中类只能单继承,而接口能实现多重继承,接口文件名不必和源文件文件名一致,接口中的方法在子类中必须全部实现,而类中,子类不必全部实现父类中的方法。接口中的数据成员必须声明为静态变量,方法必 ...
分类:
其他好文 时间:
2017-10-07 16:12:30
阅读次数:
130
1.为什么double类型的数值进行运算得不到“数学上精确”的结果? 结论:使用double类型的数值进行计算,其结果是不精确的。 原因:double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。我们给出的 ...
分类:
其他好文 时间:
2017-10-07 14:58:56
阅读次数:
132
1.一个java类文件中真的只能有一个共有类吗? java程序是从一个public类的main函数开始执行的,(其实是main线程),就像C程序是从main()函数开始执行一样。只能有一个public类是为了给类装载器提供方便。一个public类只能定义在以它的类名为文件名的文件中。 2.为什么ja ...
分类:
编程语言 时间:
2017-10-06 15:04:45
阅读次数:
170