前言:
1.變量就是申請(qǐng)內(nèi)存來存儲(chǔ)值。也就是說,當(dāng)創(chuàng)建變量的時(shí)候,需要在內(nèi)存中申請(qǐng)空間。
2.內(nèi)存管理系統(tǒng)根據(jù)變量的類型為變量分配存儲(chǔ)空間,分配的空間只能用來儲(chǔ)存該類型數(shù)據(jù)。
Java的兩大數(shù)據(jù)類型: 1.內(nèi)置數(shù)據(jù)類型 2.引用數(shù)據(jù)類型
內(nèi)置數(shù)據(jù)類型
Java語言提供了八種基本類型。六種數(shù)字類型(四個(gè)整數(shù)型,兩個(gè)浮點(diǎn)型),一種字符類型,還有一種布爾型。
整型:
byte:
- byte數(shù)據(jù)類型是8位、有符號(hào)的,以二進(jìn)制補(bǔ)碼表示的整數(shù);
- 最小值是-128(-2^7);
- 最大值是127(2^7-1);
- 默認(rèn)值是0;
- byte類型用在大型數(shù)組中節(jié)約空間,主要代替整數(shù),因?yàn)閎yte變量占用的空間只有int類型的四分之一;
short:
- short數(shù)據(jù)類型是16位、有符號(hào)的以二進(jìn)制補(bǔ)碼表示的整數(shù)
- 最小值是-32768(-2^15);
- 最大值是32767(2^15 - 1);
- Short數(shù)據(jù)類型也可以像byte那樣節(jié)省空間。一個(gè)short變量是int型變量所占空間的二分之一;
- 默認(rèn)值是0;
int:
- int數(shù)據(jù)類型是32位、有符號(hào)的以二進(jìn)制補(bǔ)碼表示的整數(shù);
- 最小值是-2,147,483,648(-2^31);
- 最大值是2,147,483,647(2^31 - 1);
- 一般地整型變量默認(rèn)為int類型;
- 默認(rèn)值是0;
long:
- long數(shù)據(jù)類型是64位、有符號(hào)的以二進(jìn)制補(bǔ)碼表示的整數(shù);
- 最小值是-9,223,372,036,854,775,808(-2^63);
- 最大值是9,223,372,036,854,775,807(2^63 -1);
- 這種類型主要使用在需要比較大整數(shù)的系統(tǒng)上;
- 默認(rèn)值是0L;
浮點(diǎn)型
float:
- float數(shù)據(jù)類型是單精度、32位、符合IEEE 754標(biāo)準(zhǔn)的浮點(diǎn)數(shù);
- float在儲(chǔ)存大型浮點(diǎn)數(shù)組的時(shí)候可節(jié)省內(nèi)存空間;
- 默認(rèn)值是0.0f;
- 浮點(diǎn)數(shù)不能用來表示精確的值,如貨幣;
double:
- double數(shù)據(jù)類型是雙精度、64位、符合IEEE 754標(biāo)準(zhǔn)的浮點(diǎn)數(shù);
- 浮點(diǎn)數(shù)的默認(rèn)類型為double類型;
- double類型同樣不能表示精確的值,如貨幣;
- 默認(rèn)值是0.0d;
布爾型
boolean:
- boolean數(shù)據(jù)類型表示一位的信息;
- 只有兩個(gè)取值:true和false;
- 這種類型只作為一種標(biāo)志來記錄true/false情況;
- 默認(rèn)值是false;
字符型
char:
- char類型是一個(gè)單一的16位Unicode字符;
- 最小值是’\u0000’(即為0);
- 最大值是’\uffff’(即為65,535);
- char數(shù)據(jù)類型可以儲(chǔ)存任何字符;
尾言:
實(shí)際上,JAVA中還存在另外一種基本類型void,它也有對(duì)應(yīng)的包裝類 java.lang.Void,不過我們無法直接對(duì)它們進(jìn)行操作。
引用類型
- 在Java中,引用類型的變量非常類似于C/C++的指針。引用類型指向一個(gè)對(duì)象,指向?qū)ο蟮淖兞渴且米兞俊_@些變量在聲明時(shí)被指定為一個(gè)特定的類型,比如Employee、Pubby等。變量一旦聲明后,類型就不能被改變了。
- 對(duì)象、數(shù)組都是引用數(shù)據(jù)類型。
- 所有引用類型的默認(rèn)值都是null。
- 一個(gè)引用變量可以用來引用與任何與之兼容的類型。
- 例子:Site site = new Site("Runoob")。
Java常量
常量在程序運(yùn)行時(shí),不會(huì)被修改的量。
在 Java 中使用 final 關(guān)鍵字來修飾常量,聲明方式和變量類似:
final double PI = 3.1415927;
雖然常量名也可以用小寫,但為了便于識(shí)別,通常使用大寫字母表示常量。
字面量可以賦給任何內(nèi)置類型的變量。
byte a = 68;
char a = 'A'
byte、int、long、和short都可以用十進(jìn)制、16進(jìn)制以及8進(jìn)制的方式來表示。
當(dāng)使用常量的時(shí)候,前綴0?表示8進(jìn)制,而前綴0x代表16進(jìn)制。例如:
int decimal = 100;
int octal = 0144;
int hexa = 0x64;
Java語言支持一些特殊的轉(zhuǎn)義字符序列。
符號(hào) | 字符含義 |
---|---|
\n | 換行 |
\r | 回車 |
\f | 換頁(yè)符 |
\b | 退格 |
\s | 空格 |
\t | 制表符 |
" | 雙引號(hào) |
' | 單引號(hào) |
\\ | 反斜杠 |
\ddd | 八進(jìn)制字符 |
\uxxxx | 16進(jìn)制Unicode字符 |