reference type vs primitive type code example
Example 1: Primitive Type vs. Reference Type
int a = 11; // Primitive Type
Integer b = new Integer(11); // Reference Type
Example 2: reference type vs primitive type
// The value of primitive data types are directly stored in the memory.
// For example if int a is initilized to 11, then 11 is directly stored
// in the memory.
int a = 11; // Primitive Type
// Reference types on the other hand are a reference to values in the
// memory. For example Integer(11) creates a reference in the memory
// whever the value 11 is stored and passes that memory reference/
// (address) to the variable.
Integer b = new Integer(11); // Reference Type
Example 3: Primitive Type vs. Reference Type
+================+=========+===================================================================================+
| Primitive type | Size | Description |
+================+=========+===================================================================================+
| byte | 1 byte | Stores whole numbers from -128 to 127 |
+----------------+---------+-----------------------------------------------------------------------------------+
| short | 2 bytes | Stores whole numbers from -32,768 to 32,767 |
+----------------+---------+-----------------------------------------------------------------------------------+
| int | 4 bytes | Stores whole numbers from -2,147,483,648 to 2,147,483,647 |
+----------------+---------+-----------------------------------------------------------------------------------+
| long | 8 bytes | Stores whole numbers from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 |
+----------------+---------+-----------------------------------------------------------------------------------+
| float | 4 bytes | Stores fractional numbers. Sufficient for storing 6 to 7 decimal digits |
+----------------+---------+-----------------------------------------------------------------------------------+
| double | 8 bytes | Stores fractional numbers. Sufficient for storing 15 decimal digits |
+----------------+---------+-----------------------------------------------------------------------------------+
| char | 2 bytes | Stores a single character/letter or ASCII values |
+----------------+---------+-----------------------------------------------------------------------------------+
| boolean | 1 bit | Stores true or false values |
+----------------+---------+-----------------------------------------------------------------------------------+