1. The enumeration type is a reference type, and the enumeration does not belong to the original data type, and each of its specific values refers to a specific object. The same value refers to the same object. You can use the "= =" and the Equals () methods to directly compare the values of the enumeration variables, in other words, the result of the "= =" and the Equals () methods are equivalent for variables of enum types.
Enumeration can be used in a switch statement.
2. The result of the calculation with a numeric value of type Double is imprecise.
3. Why is the numeric value of a double type not "mathematically accurate"?
This involves the conversion of binary and decimal.
n binary can be understood as: the power of the numerical x cardinality, for example, we are familiar with the decimal number 123.4=1x102+2x10+3x (10 of the 0 power) +4x (10-1 power); the other binary is the same, such as the binary number 11.01=1x2+1x (2 0 Power) +0+1x ( 2-2 power) = 3.25 in decimal.
A value of type double takes 64bit, or 64 binary numbers, except that the highest bit represents the positive and negative sign, and the lowest bit is bound to have an error with the actual data (unless the actual data is exactly 2 of the n-th square).
For example, for example, to use 4bit to represent decimal 3.26, from high to low to correspond to 2 1,0,-1,-2 power, according to the top of the analysis, should be in the binary number 11.01 (corresponding to the decimal 3.25) and 11.10 (corresponding to the decimal 3.5) between the selection.
In short, we give the value, in most cases need more than 64bit more digits to accurately represent (even need infinity), and the double type of the value of only 64bit, the back of the number of bits will definitely bring error, can not get "mathematically accurate" results.
(The program is also completed by testing)
The basic data types in Java are independent of the specific platform integer: Byte (8), short (+), int (+), long (64) Float: float (+), double (64) Use scientific notation to define floating-point values: 123.456=1.23456e +2 Boolean: True, false character: ' A ', ' a ' string: ' Hello,china '
Hands on the brain