Table of contents

Automate your business at $5/day with Engati


What is primitives in programming?

A primitive, in computer programming, refers to a basic interface or a segment of code that you can use for the purpose of building sophisticated program elements or interfaces.

It is essentially the simplest type of programming language item. A primitive could also refer to the smallest processing unit that is accessible by a programmer.

In a high-level programming language, discrete statements and primitive data types are used to carry out single operations or signify single data items. Primitives are employed for the purpose of creating more complex pieces of code.

They are also called built-in types or basic types. These are essentially the basic building blocks of programming languages. You could combine primitives for creating increasingly complex operations like functions, procedures, and methods.

A primitive can be considered to be a fundamental data type that can’t be broken down into simpler data types. As an example, an integer is a primitive data type but an array has the capacity to store multiple data types, so it cannot be a primitive data type.

All programming languages do not implement data types in the same manner and some programming languages actually support more data types than others. In spite of this, the majority of high-level languages share multiple common primitives.

Primitives are known as "built-in data types" because they directly store values in memory. They are pre-defined by the programming language. In primitive data types, the size and type of variable values are clearly specified, and they have no additional methods.

Source: HowToDoInJava

What is the difference between primitive and non-primitive data structures?

The key differences between primitive and non-primitive data types are:

  • Primitive data types are predefined in Java. Non-primitive data types are not defined by Java. They are created by the programmer.
  • Primitive data types can’t be used to call methods for performing certain operations, but non-primitive data types can.
  • Primitive data types will always have a value, but non-primitive data types could be null.
  • Non-primitive data types start with an uppercase letter. Primitive data types start with a lowercase letter.
  • The size of a primitive type is dependent on the data type. Non-primitive data types all have the very same size.

Build an AI chatbot to engage your always-on customers

What are the primitive data types in Java?

There are 8 primitive data types in Java. They are stored directly on the stack. These primitive data types are:

1. boolean

This is a single True or False value. It usually needs only 1 bit. It is the simplest primitive data type. 

2. byte

This is an 8-bit signed integer because the memory size is really small, it can only hold values from -128 (-27) to 127 (27 -1). Its default value is  0.

3. short

This is a 16-bit signed integer. It is used when you want to save memory but byte is far too small. It could be considered to be the middle ground between int and byte. It is half the size of an int and twice the size of a byte.  The range of possible values in a short is -32,768 (-215) to 32,767 (215-1). All standard arithmetic operations can be performed on it.

4. int

This is a 32-bit signed integer. It supports values from -2,147,483,648 (-231) to 2,147,483,647 (232 -1)

This is also known as an integer and holds a wide range of non-fractional number values. If an int is declared without an assignment, its default value is 0. In case the variable is defined in a method, you need to assign a value to it before you can use it. All standard mathematical operations can be performed on ints, but when you perform these mathematical operations on ints, the decimal values will be chopped off. 

5. long

This is a 64-bit signed integer. You could pretty much consider it to be an integer on steroids. Since it is stored in 64 bits of memory, it has the capacity to hold a much larger set of possible values. The range of possible values for a long is -9,223,372,036,854,775,808 (-263) to 9,223,372,036,854,775,807 (263 – 1).

Like other integer types, the default value of a long is also 0. All arithmetic operations that work on an int can be performed on a long.

6. float

This is a 32-bit floating-point number. It is a single-precision decimal number. This means that if it gets past six decimal points, the number becomes less precise and turns into more of an estimate.

If your calculations need absolute precision and there is no room for error, you will have to use specific types that are designed for that kind of work.

The default value of a float is 0.0 instead of 0.

All standard arithmetic operations can be performed on floats. But floating point arithmetic is performed rather differently than integer arithmetic.

7. double

This is a 64-bit floating-point number. Its name is derived from the fact that it is a double-precision decimal number. Since it is stored in 64 bits of memory, it represents a far larger range of possible values than a float can. 

The default value of a double is also 0.0, just like float.

8. char

Char is also called a character. This is essentially a 16-bit Unicode-encoded character. It’s range is from 0 to 65,535, which in, Unicode is from ‘\u0000' to ‘\uffff'.

Why is string not a primitive data type?

String is a non-primitive data type because primitive data types cannot have methods. Only class can. Stings also need to call upon several functions while processing like substring, indexof, equals, touppercase. This could not be possible without making string class.

Class has also made it possible for strings to be immutable and final, enhancing security and efficiency by permitting pooling.

Programming languages work on strings to tweak and adjust them as necessary. In that situation, if a string is built into a program or has a particular kind of support, it could be considered to be a primitive data type. But a string does not share some of the basic design elements that primitive data types have.

Let's build your first AI Chatbot today!

Close Icon
Request a Demo!
Get started on Engati with the help of a personalised demo.
Thanks for the information.
We will be shortly getting in touch with you.
Oops! something went wrong!
For any query reach out to us on
Close Icon
Congratulations! Your demo is recorded.

Select an option on how Engati can help you.

I am looking for a conversational AI engagement solution for the web and other channels.

I would like for a conversational AI engagement solution for WhatsApp as the primary channel

I am an e-commerce store with Shopify. I am looking for a conversational AI engagement solution for my business

I am looking to partner with Engati to build conversational AI solutions for other businesses

Close Icon
You're a step away from building your Al chatbot

How many customers do you expect to engage in a month?

Less Than 2000


More than 5000

Close Icon
Thanks for the information.

We will be shortly getting in touch with you.

Close Icon

Contact Us

Please fill in your details and we will contact you shortly.

Thanks for the information.
We will be shortly getting in touch with you.
Oops! Looks like there is a problem.
Never mind, drop us a mail at