public class Testing {
public static void main(String[] args) {
float piF = 3.141592653589793f; // value assigned has float precision
double piD = 3.141592653589793; // value assigned has double precision
final double THRESHOLD = .0001;
if( piF == piD)
System.out.println( "piF and piD are equal" );
else
System.out.println( "piF and piD are not equal" );
if( Math.abs( piF - (float) piD ) < THRESHOLD )
System.out.println( "piF and piD are considered equal" );
else
System.out.println( "piF and piD are not equal" );
}
}
结果:
piF and piD are not equal
piF and piD are considered equal
为什么piF和piD不相等呢?math.abs()
实际上是什么使两者相同?
我在终端中运行这个命令,然后添加piF和piD值的print语句,结果如下:
piF and piD are not equal
piF and piD are considered equal
piF = 3.1415927
piD = 3.141592653589793
当你直接比较这两者时,它们是不相等的。但是当您将piD强制转换为浮点类型时,它将变为:
(float) piD = 3.1415927
当你不明白结果的时候,尝试在变量上使用print语句,这是学习这些东西的一个很好的方法!
System.out.println("piF = " + piF);
System.out.println("piD = " + piD);
System.out.println("(float) piD = " + (float) piD);
上面说这是一次意外的超驰,但这不是偶然的... 我想要的可能吗?还是必须重写方法。我更喜欢kotlin setter..
当我运行这段代码时,它会打印。我的问题是为什么没有编译时错误?对象和字符串的默认值为NULL。那么为什么不编译器说。
我在一个有这些类的项目中工作: 这些coures类具有其他方法和属性。 如果可以的话,它应该能够使用来自Square和RedRectangle的方法,否则它应该使用来自Rectangle的方法,并且它应该迫使开发人员从他自己的代码中为所有在Square和RedRectangle中被重写的方法编写代码。 我实际上知道这是多重继承,Java不支持它,但我需要实现这种行为。 我试图使用Square和Re
问题内容: 为什么对以下代码感到重复类错误感到困惑? Netbeans将DBConnect突出显示为红色,并带有重复的类错误。 问题答案: 这是netbeans BUG 226360 的已知问题 这可能有助于清除Netbeans缓存: 转到-> ,您将看到 缓存目录: Path \ to \ Directory 关闭NetBeans,转到指定目录并删除所有内容。
首先,这里是我的代码中有问题的部分;这些都是非常基本的类 TestClass: 所以,我认为问题出在客舱。这是我第一次在class things(我指的是if(checkPw(password)==true)部分)中使用该类。在测试类中,它看起来非常清楚而且我从来没有想过会出现这个错误。我该如何避免这条信息呢? 完全错误: Java结果:1
我目前正在android studio中开发一个应用程序,我有一个用于存储图像URL的字符串数组列表。在for循环中,我每次都会向ArrayList添加一个值,但在for循环之后,ArrayList似乎会重新设置自己。 谁能给我解释一下为什么它会自动复位?
问题内容: 我想我可能已经发现Java错误。 我有一个TreeMap,其中使用了自定义比较器。但是,似乎当我将(key,value)放在已经存在的键上时,它不会覆盖该键,从而创建了重复的键。我想我已经验证了这一点,因为我尝试过 这打印出真实的。有人知道为什么会这样吗? 这是比较器代码: 问题答案: 比较器始终需要返回一致的结果,并且在TreeMap中使用时,应与equals保持一致。 在这种情况下
我们总是说,如果我们简单地定义变量< code>private并定义getters setters来访问这些变量,那么数据就会被封装。我的问题是,如果我们可以通过getters和setters访问变量(数据),那么数据是如何隐藏或安全的呢? 我在谷歌上搜索了很多解释,但我什么也没找到。每个人都刚刚在他们的博客和帖子中说这是一种数据隐藏技术,但它还没有被解释/详细说明。