Skip to main content

Data types

There are two types of data types.

  1. Primitive Data Types
  2. User Defined Data Types

Primitive Data Types

info

There are 8 primitive data types available in Java. 8 keywords are defined to represent 8 primitive data types.

Following are primitive data types:

  1. boolean
  2. byte
  3. char
  4. short
  5. int
  6. long
  7. float
  8. double

User-Defined Data Types

There are four types of user defined data types.

  1. Class Types
  2. Interface Types
  3. Enum Types(from Java5)
  4. Annotation Types(From Java5)

Java Data Types

This table outlines all primitive and user-defined data types in Java, including their size, default values, and min/max ranges.

TypeSize (bits)Size (bytes)Default ValueMin ValueMax Value
boolean1 (logical only)JVM dependentfalsefalsetrue
byte810-128127
char162\u0000\u0000 (0)\uffff (65,535)
short1620-32,76832,767
int3240-2,147,483,6482,147,483,647
long6480L-9,223,372,036,854,775,8089,223,372,036,854,775,807
float3240.0f~1.4e-45 (positive)~3.4028235e+38
double6480.0d~4.9e-324 (positive)~1.7976931348623157e+308
User-defined (class, interface, enum, record)~64 (JVM dependent)~8 (or 4)nullN/AN/A

📝 Note: User-defined types are reference types. The actual object may use more memory, but the reference itself is typically 4 or 8 bytes, depending on JVM architecture and settings (like Compressed OOPs).