常量:在程序運行時,固定不變的量。spa
常量的分類:一、用雙引號引發來的部分,叫字符串常量,例如:「abc」,「123」;ci
二、整數常量,沒有小數點的數字,例如:100,-200;作用域
三、浮點數常量,有小數點的數字,例如:2.5,-20.6;字符串
四、用單引號引發來的單個字符,叫字符常量,例如:‘a’,‘9’,‘中’;table
五、布爾常量,只有2種,true和false;class
六、空常量,只有1種,null;變量
在介紹變量前,先要了解Java的基本數據類型。數據類型
基本數據類型:整數型:byte,short, int, long;引用
浮點型:float,double;二進制
字符型:char;
布爾型:boolean;
注意:字符串不是基本數據類型,而是引用類型(引用類型暫時不介紹);
浮點數只是一個近似值,並不是精確的值;
數據範圍和字節數不必定相關,例如float數據範圍long更加普遍,可是float是4字節,long是8字節;
浮點數的默認類型是double,若是必定要使用float類型,須要加上後綴F;
整數的默認類型是int,若是必定要使用long類型,須要加上後綴L;
變量:程序運行時,內容能夠改變的量。
建立變量:數據類型 變量名稱;
給變量賦值:變量名稱 = 數據值;
能夠將上面兩句合併: 數據類型 變量名稱 = 數據值;
示例程序:
public class Demo { public static void main(String [] args){ int num1=10; double num2=20.2; char c='a'; System.out.println(num1);//10 System.out.println(num2);//20.2 System.out.println(c);//a num1=(int)num2; System.out.println(num1);//20 num1=c; System.out.println(num1);//99 num2=num1; System.out.println(num2);//10.0 } }
使用變量的注意事項:一、變量的名稱不能夠重複;
二、float和long類型數據,記得添加後綴
三、數據值不能超過數據類型的範圍
數據類型 | 字節數 | 二進制位數 | 範圍 | 規律 |
---|---|---|---|---|
byte | 1 | 8 | -128~127 | -27~27-1 |
short | 2 | 16 | -32768~32767 | -215~215-1 |
int | 4 | 32 | -2147483648~2147483647 | -231~231-1 |
long | 8 | 64 | -9223372036854775808 ~ 9223372036854775807 | -263~263-1 |
float | 4 | 32 | 1.4E-45~3.4028235E38 | |
double | 8 | 64 | 4.9E-324~1.7976931348623157E308 | |
char | 2 | 16 | 0~65535 | 0~216-1 |
boolean | 1 | 8 | true或false | true或false |
四、沒有賦值的變量不能直接使用
五、變量的使用不能超過做用域範圍,做用域:定義變量開始,直到所屬的大括弧結束
當數據類型不同時,將會發生數據類型轉換,類型轉換分爲自動類型轉換和強制類型轉換。
自動類型轉換(隱式):一、特色:代碼不須要進行特殊處理,自動完成。
二、規則:數據範圍從小到大 例如byte-short-int-long 自動完成
強制類型轉換:一、特色:代碼須要進行特殊的格式處理,不能自動完成。
二、格式:範圍小的類型 範圍小的變量名 = (範圍小的類型) 範圍大的變量名或數據;
類型轉換注意事項:一、強制類型轉換通常不推薦使用,由於有可能發生精度損失,數據溢出
二、byte/short/char這三種類型均可以發生運算,都會先提高爲int再計算,例如‘A’表明數字65,‘a’表明數字97(參照ascll碼),當字符進行運算,自動轉換成數字。
三、boolean類型不能發生任何數據類型轉換。