浮点型常量
常规形式的浮点型常量的书写形式与数学表示基本一致,如123.4。
与整型常量一样,java也采用后缀来表示浮点型常量的类型。
- 后缀
- f或F后缀:float型,占4个字节。如-123f,3.14F
- d或D后缀:double型,占8个字节。如-123d,3.14D
- 无后缀:默认为double型。如-123.4,3.14
- 指数形式
众所周知,任一实数N可以用指数形式表示为:N=+MX10E
java允许用指数形式书写浮点型常量,这特别适合于表示较大的实数具体格式为:
[-+][0x|0]尾数E|P[-+]指数[f|d]
- 第一个-+表示浮点数的符号,若未指定则为正
- 竖线“|”表示“或”即只能指定“|”分隔开的若干项中的某一项。
- 尾数可以是整数或小数,均可带前缀,这与常规形式的浮点型常量不同。
- 前缀0x表示尾数是十六进制数,而前缀0只是前到零而并非八进制
- E表示以10为底,P表示以2为底,大小写均可。
- 当尾数是十进制数时,只能使用E.
- 当尾数是十六进制数时,只能使用P,因为字母E是十六进制数的其中一个奇数
- 第二个-+表示指数的符号,若未指定则为正。
- 指数必须是十进制整数,可以带前导零
浮点型变量
有关float型和double型的表示范围的精度,一般来说,double型已能满足绝大多数应用对实数的需求,若对精度要求较高或涉及到货币计算,则应优先考虑使用java.math包下,BigDecimal类,该类可以表示任意精度的有符号十进制数。