你怎么称呼这种赋值:float aFloat = 4.f;

时间:2011-05-28 01:58:03

标签: java types numerical

我想知道你怎么称呼它,我想到了“隐式数据类型”,但似乎这真的不是我想象的。

我也想知道Java中的所有可能性, 就像我知道你可以用它来做其他数值,比如字节,整数,长整数等。 我自己搜索,但我仍然不知道如何定义这种类型 数值变量赋值,或如何命名。

我对此很好奇,但我还是真的想知道!

提前致谢。

2 个答案:

答案 0 :(得分:5)

显式数字/数字文字

在你的例子中,它实际上不是“隐含的”。恰恰相反。

以下是来自官方primitive types and their notationsJava Tutorials(下面粘贴的示例)以及一些tricks you need to know about floats的更多内容。

您可能还想了解有关conversions, promotions and narrow-casting的更多信息。

示例:

int    decVal = 26;      // The number 26, in decimal
int    octVal = 032;     // The number 26, in octal
int    hexVal = 0x1a;    // The number 26, in hexadecimal
int    binVal = 0b11010; // The number 26, in binary
double d1     = 123.4;
double d2     = 1.234e2; // same value as d1, but in scientific notation
float  f1     = 123.4f;

使用下划线(自Java 7开始)

long  creditCardNumber     = 1234_5678_9012_3456L;
long  socialSecurityNumber = 999_99_9999L;
float pi                   = 3.14_15F;
long  hexBytes             = 0xFF_EC_DE_5E;
long  hexWords             = 0xCAFE_BABE;
long  maxLong              = 0x7fff_ffff_ffff_ffffL;
byte  nybbles              = 0b0010_0101;
long  bytes                = 0b11010010_01101001_10010100_10010010;

答案 1 :(得分:1)

我同意haylem,这不是隐含的。

您要求其他数字类型示例:

整数类型:

073 (leading zero, octal)
123l (long)
0xFF (hex)

浮点数:

1.1E-3 (double)
1e10f (float)