Java 基本資料類型
變量就是申請記憶體來存儲值。也就是說,當建立變量的時候,需要在記憶體中申請空間。 記憶體管理系統根據變量的類型為變量配置設定存儲空間,配置設定的空間隻能用來儲存該類型資料。 是以,通過定義不同類型的變量,可以在記憶體中儲存整數、小數或者字元。 Java的兩大資料類型,内置資料類型和引用資料類型。
1.内置資料類型: Java語言提供了八種基本類型。六種數字類型(四個整數型,兩個浮點型),一種字元類型,還有一種布爾型。
byte(這種資料類型在java中不常用):
byte資料類型是8位、有符号的,以二進制補碼表示的整數;
預設值是0;
byte類型用在大型數組中節約空間,主要代替整數,因為byte變量占用的空間隻有int類型的四分之一;
例子:byte a = 100,byte b = -50。
short(這種資料類型在java中不常用):
short資料類型是16位、有符号的以二進制補碼表示的整數
Short資料類型也可以像byte那樣節省空間。一個short變量是int型變量所占空間的二分之一;
預設值是0;
例子:short s = 1000,short r = -20000。
int:
int資料類型是32位、有符号的以二進制補碼表示的整數;
一般地整型變量預設為int類型;
預設值是0;
例子:int a = 100000, int b = -200000。
long:
long資料類型是64位、有符号的以二進制補碼表示的整數;
這種類型主要使用在需要比較大整數的系統上;
預設值是0;
例子: long a = 100000L,Long b = -200000L。
float:
float資料類型是單精度、32位、符合IEEE 754标準的浮點數;
float在儲存大型浮點數組的時候可節省記憶體空間;
預設值是0.0f;
浮點數不能用來表示精确的值,如貨币;
例子:float f1 = 234.5f。
double:
double資料類型是雙精度、64位、符合IEEE 754标準的浮點數;
浮點數的預設類型為double類型;
double類型同樣不能表示精确的值,如貨币;
預設值是0.0d;
例子:double d1 = 123.4。
boolean:
boolean資料類型表示一位的資訊;
隻有兩個取值:true和false;
這種類型隻作為一種标志來記錄true/false情況;
預設值是false;
例子:boolean one = true。
char:
char類型是一個單一的16位Unicode字元;
char資料類型可以儲存任何字元;
例子:char letter = ‘A’。
String:
String是比較特殊的字元串類型;
例子:String a = ‘你好’。
使用變量的步驟
第一步:聲明變量,既"根據資料類型在記憶體申請空間"
資料類型 變量名; int money
第二步:指派,既"将資料存儲至對應的記憶體空間"
變量名=數值; money=1000;
第一步和第三步合并
資料類型 變量名=數值; int money=1000;
第三步:使用變量,既取出資料使用
變量名規範
1.變量名首字母必須是字母,下劃線,美元符号,其餘部分任意多的數字,字母,下劃線,美元符号
2.簡短能清楚地表明變量的作用,通常第一個單詞的首字母的大寫
3.變量先聲明并指派然後才能使用
4.聲明兩個同名變量不能重複
變量的作用域
從定義變量地方開始,到目前"}"後結束,變量如果出了作用域就會被回收
六:基本資料類型轉換
1.自動類型轉換(隐式類型轉換):從小到大類型可以自動完成
2.強制類型轉換:從大到小類型需要強制轉換符,會造成精度損失或溢出
byte-->short-->int-->long-->float-->double
從左往右小類型到大類型,可以自動類型轉換
往左大類型到小類型,需要強制類型轉換
Float和Double的最小值和最大值都是以科學記數法的形式輸出的,結尾的"E+數字"表示E之前的數字要乘以10的多少倍。比如3.14E3就是3.14×1000=3140,3.14E-3就是3.14/1000=0.00314。 實際上,JAVA中還存在另外一種基本類型void,它也有對應的包裝類 java.lang.Void,不過我們無法直接對它們進行操作。
2.引用資料類型
引用類型
引用類型變量由類的構造函數建立,可以使用它們通路所引用的對象。這些變量在聲明時被指定為一個特定的類型,比如Employee、Pubby等。變量一旦聲明後,類型就不能被改變了。
對象、數組都是引用資料類型。
所有引用類型的預設值都是null。
一個引用變量可以用來引用與任何與之相容的類型。
例子:Animal animal = new Animal(“giraffe”)。
Java常量
常量就是一個固定值。它們不需要計算,直接代表相應的值。
常量指不能改變的量。 在Java中用final标志,聲明方式和變量類似:
final double PI = 3.1415927;
雖然常量名也可以用小寫,但為了便于識别,通常使用大寫字母表示常量。
字面量可以賦給任何内置類型的變量。例如:
byte a = 68;
char a = 'A'
byte、int、long、和short都可以用十進制、16進制以及8進制的方式來表示。
當使用常量的時候,字首0表示8進制,而字首0x代表16進制。例如:
int decimal = 100;
int octal = 0144;
int hexa = 0x64;
和其他語言一樣,Java的字元串常量也是包含在兩個引号之間的字元序列。下面是字元串型字面量的例子:
"Hello World"
"two\nlines"
""This is in quotes""
字元串常量和字元常量都可以包含任何Unicode字元。例如:
char a = '\u0001';
String a = "\u0001";
Java語言支援一些特殊的轉義字元序列。
符号 字元含義
\n 換行 (0x0a)
\r 回車 (0x0d)
\f 換頁符(0x0c)
\b 倒退 (0x08)
\s 空格 (0x20)
\t 制表符
" 雙引号
' 單引号
\ 反斜杠