Java語言基礎-數據類型

Java語言基礎-數據類型


數據類型的作用是什麼?

  • 程序當中有很多數據,每一個數據都有相關類型的,不同的數據類型的數據佔用空間大小不同。
  • 數據類型的作用是指導jvm在運行程序的時候給該數據分配多大的內存空間。

Java中的數據類型包括兩種

  1. 基本數據類型
  2. 引用數據類型:類,接口,數組等等

關於基本數據類型

基本數據類型包括四大類八小種:
  1. 整數型:byte,short,int,long

  2. 浮點型:float,double

  3. 布爾型:boolean

  4. 字符型:char

    字符串“abc”不屬於基本數據類型,屬於引用數據類型,字符屬於基本數據類型

八種基本數據類型各自佔用空間大小

基本數據類型 佔用空間大小【單位:字節】
byte 1
short 2
int 4
long 8
float 4
double 8
boolean 1
char 2

計算機在任何情況下都只能識別二進制

現代的計算機底層採用交流電的方式,接通和斷開就兩種狀態,計算機只識別1或0,其他不認識。

什麼是二進制?

數據的一種表示形式。十進制表示滿十進一原則,二進制表示滿二進一原則
例如:

  • 十進制: 0 1 2 3 4 5 6 7 8 9 10 11 12 13…
  • 二進制:0 1 10 11 100 101 110 111 1000 1001…

字節(byte)

  • 1 Byte = 8 bit【一個字節 = 8個比特位】一個比特位表示一個二進制位:1/0
  • 1 KB = 1024 Byte
  • 1 MB = 1024 KB
  • 1 GB = 1024 MB
  • 1 TB = 1024 GB

整數型當中的byte類型,佔用1個字節,所以byte類型的數據佔用8個比特位。那麼byte類型的取值範圍是什麼?

  • 關於Java中的數字類型,數字都是有正負之分的,所以在數字的二進制當中有一個二進制位被稱爲“符號位”。並且這個“符號位”在所有二進制位的最左邊,0表示正數,1表示負數。
  • byte類型最大值:011111111【10000000(二進制)- 1】
  • byte類型最大值:2的7次方 - 1,結果是:127
  • byte類型最小值:-128【具體的怎麼用二進制表示,這個和原碼,反碼,補碼有關】
  • byte類型取值範圍:[-128 ~ 127]
  • byte類型可以表示256個不同的數字【256個不同的二進制】

二進制和十進制之間的轉換規則

  • 二進制轉換成十進制:從右往左數,第幾位就是2的幾次方,遇0不計,然後相加。
  • 十進制轉換爲二進制:除二求餘數,逆序輸出。

計算機只認識二進制,那麼計算機是怎麼表示現實世界當中的文字呢?

  • 八種基本數據類型當中,byte,short,int,long,float,double,boolean這七種數據類型計算機表示的時候比較容易,因爲底層都是數字,十進制的數字和二進制之間存在一種固定的轉換規則。
  • 但是八種基本數據類型當中char類型表示的是現實世界中的文字,文字和計算機二進制之間”默認“情況下是不存在任何轉換關係的。
  • 爲了讓計算機可以表示現實世界當中的文字,我們需要進行人爲的干涉,需要人負責提前制定好“文字”和“二進制”之間的對照關係。這種對照轉換關係被稱爲字符編碼。
  • 計算機最初只支持英文,最先出現的字符編碼是ASCII碼。
    例如:
    ‘a’ --> 97 【01100001】
    ‘A’ --> 65
    ‘0’ -->48
    ‘a’ --> (按照ASCII解碼) --> 01100001
    01100001 --> (按照ASCII編碼) --> ‘a’
    當編碼和解碼的時候採用的不是同一套字典/對照表,會出現亂碼,同一套則不會。

八種基本數據類型的取值範圍

類型 默認值 取值範圍
byte 0 [-128 ~ 127]*
short 0 [-32768 ~ 32767]
int 0 [-2147483648 ~ 2147483647]
long 0
float 0.0
double 0.0
boolean false [true,false]*
char \u0000 [0 ~ 65535]*

注意:

  • short和char所表示的種類總數是一樣的,只不過char可以表示更大的正整數。因爲char沒有負數。
  • 成員變量沒有手動賦值,系統會默認賦值,局部變量沒有賦值會報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章