今天调试程序时,意外的发现java的浮点数中也有NaN,留下来做个记录。
/**
* 测试java浮点数中存在的NaN
* @author ayis
*
* Feb 23, 2009
*/
public class TestNaN {
public static void main(String args[]){
// 在double 和 float 类型中,有NaN值
double a =0 , b= 0 ,c;
c = a/(a+b);
System.out.println(c);
// 在int 和 long 类型中,没有NaN值,解除注释,此处会抛异常 --- / by zero
// int a =0 , b= 0 ,c;
// c = a/(a+b);
// System.out.println(c);
// NaN与任何数比较均返回false
if( (0 > c) || (0 == c) || (0 < c)){
System.out.println("NaN compared with 0 is not always false.");
}else{
System.out.println("NaN compared with 0 is always false!");
}
}
}
分享到:
相关推荐
本篇文章将深入探讨“ActionScript Number(NaN) —> java(null) —> NaN —> null”这一主题,主要关注如何处理在ActionScript中的NaN(Not-a-Number)值在Java中转换为null的情况,以及这种转换可能引发的问题和...
**JDBC分层架构在Java中的应用** 在Java开发中,JDBC(Java Database Connectivity)是连接Java应用程序和数据库的标准接口。为了使代码更易于维护、扩展和复用,通常会采用分层架构来组织JDBC相关的代码。在这个...
在Java编程语言中,浮点数运算涉及到两个特殊的值,它们是`NAN`(Not-a-Number)和`INFINITY`(正无穷大和负无穷大)。这两个值的引入是为了处理浮点运算中可能出现的特殊情况,比如除以零、数值溢出等。 1. **...
Java 中的 NaN 代表 Not a Number,无法用于比较操作。在 Java 中,如果 i=Double.NaN;j=i;那么 i==j 的结果依旧为 false。这是因为 NaN 是一个特殊的值,它不能用于比较操作。 3. Java 1.5 的自动装箱拆箱机制 ...
JAVA达内面试题 以下是根据给定的文件信息生成的相关知识点: 1. 在main方法中不能调用非静态方法:在Java中...15. NaN比较:在Java中,所有关于NaN(Not a Number)和non-NaN的比较,都返回false。这条规则很重要。
"test_java_exactly3ix_SSM框架_nan_ssm_"可能是一个示例项目,用于演示如何搭建并使用SSM框架进行CRUD(Create、Read、Update、Delete,即创建、读取、更新、删除)操作。 在SSM框架中,CRUD操作通常包括以下几个...
对于“NaN”,在C++、Java等语言中,当进行如除以零、无穷大操作或者某些无法表示的数学运算时,会返回NaN。处理NaN时,需要特别注意其特性,比如它不等于自身,任何涉及NaN的操作都会返回NaN。 标签"nan"进一步...
Java中的浮点数处理涉及到两种主要的非整数类型:`float`和`double`,它们遵循IEEE 754标准。这个标准定义了32位的浮点数(单精度,对应`float`)和64位的双精度浮点数(对应`double`)。这两种类型都有包装类,分别...
### Java自学总结94点知识点详解 #### 一、标识符与关键字 1. **标识符**: 在Java中,标识符用于命名类名、变量名、方法名等。标识符可以由字母、数字、下划线`_`及美元符号`$`组成,但不能以数字开头。 - 示例:`...
4. 特殊浮点数:Double和Float的POSITIVE_INFINITY表示正无穷大,NEGATIVE_INFINITY表示负无穷大,NaN表示非数。 5. Java 7允许在数值常量中使用下划线(_)提高可读性,如int binVal = 0B1000_0000_0000_0011;,...
Double和Float类提供了处理浮点数值的能力,包括MAX_VALUE、MIN_VALUE、NaN、POSITIVE_INFINITY和NEGATIVE_INFINITY这些常量,用于表示最大值、最小值、非数字、正无穷和负无穷。compareTo()方法可以比较两个浮点数...
双精度(Double)和浮点(Float)类还定义了一些静态常量,如MAX_VALUE、MIN_VALUE和NaN,分别表示最大值、最小值和非数字值。 总结,`java.lang`包是Java的核心,包含了一系列基础类和接口,它们为Java程序提供了...
2. **Java基础语法**(day04-函数与数组.doc、传智播客_Java培训_毕向东_Java基础[02-Java基础语法1].pdf、[02-Java基础语法2].pdf):这部分深入讲解了Java的基本语法,包括变量、数据类型、运算符、控制结构(如if...
反之,则可能返回`NaN`或其他错误标识。 #### 总结 通过上述示例,我们了解了Java操作JavaScript的基本流程:初始化`ScriptEngineManager`,获取`ScriptEngine`实例,执行脚本,以及通过`Invocable`接口调用脚本中...
java校园一卡通源码我的力扣 当前进度: 79/1650问题 (4%) 257问题仍被锁定。 笔记: :locked: 意味着你需要从 LeetCode 购买一本书 力扣解决方案表 ID 标题 困难 C C++ Python Java 001 简单的 NaN NaN 002 中等的 ...
在Java编程语言中,四则运算器是一种程序,它能够执行基本的数学操作,包括加法(+)、减法(-)、乘法(*)和除法(/)。这类程序通常用于教学目的,以帮助初学者理解如何在Java中处理数字和运算。在这个“java.四...
- **异常处理**:整数除零会引发异常,而浮点数除零将返回无穷大或NaN。 - **数学常量**:`Math.PI`和`Math.E`提供了π和e的近似值。 - **字符串比较**:`"=="`仅用于判断字符串引用是否相同,并非内容比较。 - *...
### Java基本数据类型及其封装类 Java是一种广泛使用的面向对象编程语言,支持多种数据类型来满足不同的编程需求。其中,基本数据类型是最基础且最常用的元素之一。它们直接存储值而不是对象引用,因此效率较高。...
### Java语言规范十一版知识点概览 #### 一、引言 《Java语言规范》第十一版(Java SE 11 Edition)是Java编程语言的标准文档之一,详细规定了Java语言的各种特性和行为规则。本版由James Gosling、Bill Joy、Guy ...