Java中的8种原始类型
幾年前,當我開始編輯Java Basics系列時,我認為將一些非常詳細的信息拉到自己的帖子中是很有意義的。 這樣,初學者的內(nèi)容就更容易消化。 首先,我要介紹有關(guān)Java的8種原始類型的所有信息。
Java基本類型
正如本文標題所暗示的,Java語言內(nèi)置了8種原始類型。 在以下小節(jié)中,我們將不按特定順序查看所有八個基本類型。 對于每種原始類型,我們將描述如何使用它以及它的局限性。
原始類型
首先,Java整數(shù)是32位帶符號的值(表示正值或負值),并由int關(guān)鍵字表示:
int someNumber = 10 ;當然,像所有基本類型一樣,整數(shù)有其局限性。 由于它們是32位的,因此我們要查看的范圍是-2,147,483,648到2,147,483,647。 有很多數(shù)字! 當然,我們可以使用DrJava的交互窗格中的便捷技巧來確認該范圍:
Integer.MAX_VALUE // Prints 2,147,483,647 Integer.MIN_VALUE // Prints -2,147,483,648自然, int可能是用于簡單計算的最常見的整數(shù)類型。 如果您需要更多的范圍內(nèi),看到long的下方。
雙重原始類型
與int不同,Java double是64位浮點值,它們由double關(guān)鍵字標記:
double someNumber = 110.55 ;提醒一下,浮點數(shù)只是實數(shù)。 換句話說,當我們使用雙精度時,我們可以訪問小數(shù)點。
由于雙精度數(shù)是64位的,因此與整數(shù)相比,我們可以訪問的數(shù)字明顯更多。 如果我們使用相同的“交互”窗格技巧,則可以找出潛在值范圍的巨大程度:
Double.MAX_VALUE // Prints 1.7976931348623157E308 Double.MIN_VALUE // Prints 4.9E-324請記住,負指數(shù)意味著極小的數(shù)字(與極度負的數(shù)字相對),因此我們并不是在尋找與整數(shù)相同的范圍。
通常, double是Java中浮點值的默認選擇。 替代方法是float 。
字符基本類型
正如我們已經(jīng)看到的,Java字符代表16位字符,并用char關(guān)鍵字標記:
char someCharacter = 'f' ;Java中的所有字符都使用單引號定義。 同時,雙引號用于定義字符串-我們稍后會討論。
像往常一樣,我們可以使用以下代碼片段找出字符范圍:
Character.MAX_VALUE // Prints '???' Character.MIN_VALUE // Prints ''為了理解這個范圍,我們總是可以將結(jié)果強制轉(zhuǎn)換為整數(shù)(稍后會詳細介紹):
( int ) Character.MAX_VALUE // Prints 65535 ( int ) Character.MIN_VALUE // Prints 0事實證明, char類型是Java中唯一的無符號類型。 換句話說,一個字符的范圍可以從0到65,535,其中每個數(shù)字都映射到一個特定的字符。 為了創(chuàng)建此列表之外的字符,Java可以組合成對的字符。 請查看Java中的“反向字符串”示例。
字節(jié)原始類型
當我們談論二進制時,我們談到了一點概念。 好吧,一組八位組成一個字節(jié),Java將其作為原始類型來支持。 byte類型本質(zhì)上只是一個8位數(shù)字,范圍為-128至127。如所期望的,字節(jié)由byte關(guān)鍵字表示:
byte someByte = 20 ;與往常一樣,我們可以使用以下代碼片段來確認byte類型的范圍:
Byte.MAX_VALUE // Prints 127 Byte.MIN_VALUE // Prints -128以我的經(jīng)驗, byte類型對于讀取和處理原始數(shù)據(jù)很有用。 但是,總的來說,由于電位值的范圍太小,我們可能不會使用它。
短原始類型
short類型是另一個整數(shù)類型,但是它比int類型占用更少的空間。 實際上,它只占用16位的一半空間,并用short關(guān)鍵字標記:
short someNumber = 11 ;就范圍而言, short類型僅將整數(shù)的一半作為時鐘輸入,但是我們可以像往常一樣確認這一點:
Short.MAX_VALUE // Prints 32767 Short.MIN_VALUE // Prints -32768出于實際目的, short僅具有65,546個可能值。 當內(nèi)存和磁盤空間不足時,通常同時使用byte和short byte 。 否則,使用int是安全的,因為在聲明整數(shù)時它是默認類型。
長原始類型
在頻譜的另一端是long原始類型。 該類型表示極大的整數(shù),我們可能希望這些整數(shù)甚至大于int類型可以提供的值。 long類型是一個64位有符號整數(shù),這意味著值的范圍為5百億分之一。
當然,我們表示與多頭long關(guān)鍵字:
long someBigNumber = 1013401346173L;為了演示一個64位值可以具有多大的范圍,讓我們看一下以下代碼片段:
Long.MAX_VALUE // Prints 9,223,372,036,854,775,807 Long.MIN_VALUE // Prints -9,223,372,036,854,775,808對于計算給定時間范圍內(nèi)的光線傳播距離,也許很long時間有用。 一秒鐘后,光傳播約3億米。 如果我們編寫了一個程序來實時跟蹤光的距離,則int類型將在大約7秒后消失,而長類型可以計算出大約975年。 不相信我嗎? 檢查一下整個計算過程中的要點 。
浮點原始類型
雖然我們經(jīng)常使用double ,它是64位浮點數(shù)類型,但Java支持另一種浮點數(shù)類型,稱為float 。 但是,像int一樣,Java默認將浮點值double 。 無論如何,我們可以使用float關(guān)鍵字表示32位浮點數(shù):
float someNumber = 11 .4f;為了了解float的范圍,讓我們再次使用技巧:
Float.MAX_VALUE // Prints 3.4028235E38 Float.MIN_VALUE // Prints 1.4E-45如我們所見,32位確實減少了我們的范圍和精度。 如果要在使用一半空格的同時使用精度不如double的十進制值,則可以選擇float類型。
布爾基元類型
最后,我們可以介紹boolean類型。 要聲明一個boolean ,我們可以使用boolean關(guān)鍵字:
boolean isBool = true ;布爾值有點獨特,因為它們不像所有其他原始類型一樣代表數(shù)字值。 實際上,我們的MAX_VALUE和MIN_VALUE小技巧在這里不起作用。 取而代之的是,布爾值表示true還是false ,我們可以從上一堂邏輯課中回顧出來。
我們現(xiàn)在不會花很多時間,因為它將成為我們在Java中所做的幾乎所有事情的一部分。 也就是說,我們通常不會像這樣明確聲明它們。 相反,它們是比較的結(jié)果,這些比較驅(qū)動代碼中的邏輯。 請查看下面的布爾運算符部分以獲取更多信息。
想了解更多?
如前所述,該信息可以在Java的基本類型和變量文章中找到。 當然,現(xiàn)在該文章更容易閱讀。
無論如何,再次感謝您的支持。 下次見!
翻譯自: https://www.javacodegeeks.com/2019/08/8-primitive-types-java.html
總結(jié)
以上是生活随笔為你收集整理的Java中的8种原始类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ElasticSearch-Hadoop
- 下一篇: java中布尔值做比较_Java中的三态