A primitive type is predefined by the Java language and named by its reserved keyword (§3.9):
PrimitiveType:
NumericType
boolean
NumericType:
IntegralType
FloatingPointType IntegralType: one of
byte short int long char
FloatingPointType: one of
float double
Primitive values do not share state with other primitive values. A variable whose type is a primitive type always holds a primitive value of that same type. The value of a variable of primitive type can be changed only by assignment operations on that variable.
The numeric types are the integral types and the floating-point types.
The integral types are byte
, short
, int
, and long
, whose values are 8-bit, 16-bit, 32-bit and 64-bit signed two's-complement integers, respectively, and char
, whose values are 16-bit unsigned integers representing Unicode characters.
The floating-point types are float
, whose values are 32-bit IEEE 754 floating-point numbers, and double
, whose values are 64-bit IEEE 754 floating-point numbers.
The boolean
type has exactly two values: true
and false.