| Type | Length | Range |
|---|---|---|
| byte | 8-bit signed two’s complement integer. | minimum: -128; maximum: 127 (inclusive) |
| short | 16-bit signed two’s complement integer. | minimum: -32,768; maximum: 127 (inclusive) |
| int | 32-bit signed two’s complement integer. in Java 8 and later: int can represent an unsigned 32-bit integer. |
signed — minimum: -231; maximum: 231-1 (inclusive) unsigned — minimum: 0; maximum: 232-1 |
| long | 64-bit signed two’s complement integer. in Java 8 and later: int can represent an unsigned 64-bit integer. |
signed — minimum: -263; maximum: 263-1 (inclusive) unsigned — minimum: 0; maximum: 264-1 |
| float | single-precision 32-bit IEEE 754 floating point. | See Java Language Specification. Don’t use for precise values, such as currency. |
| double | single-precision 64-bit IEEE 754 floating point. | See Java Language Specification. Don’t use for precise values, such as currency. |
| boolean | not precisely defined | true and false |
| char | single 16-bit Unicode character | minimum: '\u0000' (0); maximum: '\uffff' (65,535) inclusive |
| Data Type | Default Value |
|---|---|
| byte | 0 |
| short | 0 |
| int | 0 |
| long | 0L |
| float | 0.0f |
| double | 0.0d |
| boolean | false |
| char | '\u0000' |
| String (or any object) | null |