Java primitive data types are the basic data types that are built-in to Java language. A data type is a classification mechanism whereby it can be identified that what kind of data is stored inside the variable, and what operations it supports.
Java provides a richer set of primitive or basic or built-in data types than other languages like C and C++. There are eight built-in types supported by Java to support integer, floating-point, character, and boolean values. All primitive or basic data types hold numeric data that is directly understood by system.
The following table lists all Java primitive data types, their storage requirements in bytes and the numeric range they support.
|Type||Size in Bytes||Range|
|byte||1 byte||-128 to 127|
|short||2 bytes||-32,768 to 32,767|
|int||4 bytes||-2,147,483,648 to 2,147,483, 647|
|long||8 bytes||-9,223,372,036,854,775,808 to
|float||4 bytes||approximately ±3.40282347E+38F
(6-7 significant decimal digits)
Java implements IEEE 754 standard
|double||8 bytes||approximately ±1.79769313486231570E+308
(15 significant decimal digits)
|char||2 byte||0 to 65,536 (unsigned)|
|boolean||not precisely defined*||true or false|
boolean represents one bit of information, but its "size" isn't something that's precisely defined.
[Source: Sun's data type tutorial]
It is important to note that Java does not support unsigned types. All
int variants are signed. But
char is an exception; it is unsigned and consumes 2 bytes in memory. It stores 16-bit Unicode UTF-16 character. Type
char to be unsigned seems logical because there are no negative characters.
Java primitive data types are initialized to some default values when they are declared as class members. While programming in Java you declare and use variables at two places. First, inside a function those are local to that function. And second, as a class member. When a variable is declared local to a function it must be initialized or assigned before its first use otherwise compiler reports an error "variable <variable name> might not have been initialized". But when a variable is declared as a class member or field, it is not always essential to assign a value to the member. In that case class members are initialized to some default values by the compiler. However, leaving class members uninitialized is not considered a good practice.
The following table lists the default values for Java's primitive data types shown in Table 1.
|String or other object||null|
In this tutorial we discussed Java's primitive or basic data types their default values and range. Hope you have enjoyed reading this tutorial. Please do write us if you have any suggestion/comment or come across any error on this page. Thanks for reading!
Developers launch a new app to help pregnant women get a seat on public transport while commuting.Samsung confirms battery faults as cause of Note 7 firesPosted on Monday January 23, 2017
The firm says neither software nor hardware, other than the batteries, were at fault in Note 7.China to crack down on censor-busting servicesPosted on Monday January 23, 2017
China is cracking down on the hi-tech ways citizens avoid official scrutiny of what they do online.Courtesy BBC News