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!
Germany's spy agency says China is using the site to gather information on politicians.Bitcoin futures trading begins on CBOE exchange in ChicagoPosted on Monday December 11, 2017
Trading in futures contracts is a step towards legitimising the digital currency, its supporters say.Calls for Twitch to police 'sexual streaming'Posted on Saturday December 09, 2017
The game streaming site has been criticised for tolerating a growing number of 'sexual streamers'Courtesy BBC News