

就將不確定的數據進行存儲
也就是在內豐中開辟一個空間用來存放變量的。
利用聲明的方式將內在中的某個內在空間保留下來以代程序使用
聲明數據類型:變量名=變量值
三、數據類型

Java語言是強類型語言,對于每一種數據都定義了明確的具體數據類型,在內存中分配了不同大小的內存空間:
byte 1個字節
short 2個字節
int 4個字節
long 8個字節
float 4個字節
double 8個字節
char 2個字節
No. | 數據類型 | 大小/位 | 可表示的數據范圍 |
1 | long(長整數) | 64 | -9223372036854775808 ~ 9223372036854775807 |
2 | int(整數) | 32 | -2147483648 ~ 2147483647 |
3 | short(短整數) | 16 | -32768~32767 |
4 | byte(位) | 8 | -128 ~ 127 |
5 | char(字符) | 2 | 0 ~ 255 |
6 | float(單精度) | 32 | -3.4E38(-3.4´1038) ~ 3.4E38(3.4´1038) |
7 | double(雙精度) | 64 | -1.7E308(-1.7´10308)~ 1.7E308(1.7´10308) |
默認值
No. | 數據類型 | 默認值 |
1 | byte | (byte)0 |
2 | short | (short)0 |
3 | int | 0 |
4 | long | 0L |
5 | float | 0.0f |
6 | double | 0.0d |
7 | char | /u0000(空,'') |
8 | boolean | false |

byte a=1; //聲明byte 類型變量a=1 int b=a+1; //聲明int 變量b 同時賦值a+1,1是整型a向整型轉化為整型運算,自動轉化 System.out.PRintln(b); short s1=1; //聲明short類型變量s1同是賦值1 short s2=s1++; //聲明short 類型變量s2同時賦值s1++,自增運算,內隱藏了自動類型轉化 s2+=1; //s2+=1;自動類型轉換
int a=5,b=5; System.out.println("a+b="+a+b); //a+b=是字符串+5變為 a+b=5,再+連接5,結果變為a+b=55 System.out.println("a+b="+(a+b)); //使用括號提高優先級
char ch1='a'; char ch2=97; System.out.println("ch1= "+ch1); System.out.println("ch2= "+ch2);No. | 轉義字符 | 描述 | No. | 轉義字符 | 描述 |
1 | /f | 換頁 | 2 | // | 反斜線 |
3 | /b | 倒退一格 | 4 | /' | 單引號 |
5 | /r | 歸位 | 6 | /" | 雙引號 |
7 | /t | 制表符Tab | 8 | /n | 換行 |
char ch1='/"'; char ch2='//'; System.out.println("ch1= "+ch1); System.out.println("ch2= "+ch2); System.out.println("/"Hello World/"");結果:
ch1= "
ch2= /
"Hello World"
No. | 一元運算符 | 描述 |
1 | + | 正號 |
2 | – | 負號 |
3 | ! | NOT,否 |
結果:
x= 10
y= -30
flag= false !b= true
5.3、算術運算符
算術運行符和數學中的用法一樣
No. | 算術運算符 | 描述 |
1 | + | 加法 |
2 | – | 減法 |
3 | * | 乘法 |
4 | / | 除法 |
5 | % | 取模(取余數) |
int i = 10; int j = 3; System.out.println(i+"+"+j +"="+(i+j)); //加法 System.out.println(i+"-"+j +"="+(i-j)); //減法 System.out.println(i+"*"+j +"="+(i*j)); //乘法 System.out.println(i+"/"+j +"="+(i/j)); //除法 System.out.println(i+"%"+j +"="+(i%j)); //取模求余數結果:
10+3=13
10-3=7
10*3=30
10/3=3
10%3=1
No. | 關系運算符 | 描述 |
1 | > | 大于 |
2 | < | 小于 |
3 | >= | 大于等于 |
4 | <= | 小于等于 |
5 | == | 等于 |
6 | != | 不等于 |
No. | 自增與自減運算符 | 描述 |
1 | ++ | 自增,變量值加1 |
2 | -- | 自減,變量值減1 |
int a=3,b=3; //定義整型變量a,b int x=6,y=6; //定義整型變量x,y System.out.println("a= "+a); //輸出變量a的值 System.out.println("a++="+(a++)+" a= "+a); //輸入a++和a++之后a的值3,4 System.out.println("b= "+b); System.out.println("++b="+(++b)+" b="+b); //值出++b,和++b之后b的值4,4 System.out.println("x= "+x); System.out.println("x--="+(x--)+" x= "+x); //輸出x--和x--之后x的值6,5 System.out.println("y= "+y); System.out.println("--y="+(--y)+" y="+y); //輸出--y和--y之后的值5,5No. | 邏輯運算符 | 描述 |
1 | & | AND,與 |
2 | && | 短路與 |
3 | | | OR,或 |
4 | || | 短路或 |
No. | 條件1 | 條件2 | 結果 | |
&&(與) | ||(或) | |||
1 | true | true | true | true |
2 | true | false | false | true |
3 | false | true | false | true |
4 | false | false | false | false |
No. | 位運算符 | 描述 |
1 | & | 按位與 |
2 | | | 按位或 |
3 | ^ | 異或(相同為0,不同為1) |
4 | ~ | 取反 |
5 | << | 左移位 |
6 | >> | 右移位 |
7 | >>> | 無符號右移位 |
位運算的結果表
No. | 二進制數1 | 二進制數1 | 與操作(&) | 或操作(|) | 異或操作(^) |
1 | 0 | 0 | 0 | 0 | 0 |
2 | 0 | 1 | 0 | 1 | 1 |
3 | 1 | 0 | 0 | 1 | 1 |
4 | 1 | 1 | 1 | 1 | 0 |
優先級 | 運算符 | 類 | 結合性 |
1 | () | 括號運算符 | 由左至右 |
1 | [] | 方括號運算符 | 由左至右 |
2 | !、+(正號)、-(負號) | 一元運算符 | 由右至左 |
2 | ~ | 位邏輯運算符 | 由右至左 |
2 | ++、-- | 遞增與遞減運算符 | 由右至左 |
3 | *、/、% | 算術運算符 | 由左至右 |
4 | +、- | 算術運算符 | 由左至右 |
5 | <<、>> | 位左移、右移運算符 | 由左至右 |
6 | >、>=、<、<= | 關系運算符 | 由左至右 |
7 | ==、!= | 關系運算符 | 由左至右 |
8 | &(位運算符AND) | 位邏輯運算符 | 由左至右 |
9 | ^(位運算符號XOR) | 位邏輯運算符 | 由左至右 |
10 | |(位運算符號OR) | 位邏輯運算符 | 由左至右 |
11 | && | 邏輯運算符 | 由左至右 |
12 | || | 邏輯運算符 | 由左至右 |
13 | ?: | 三目運算符 | 由右至左 |
14 | = | 賦值運算符 | 由右至左 |
No. | 運算符 | 范例用法 | 說明 | 描述 |
1 | += | a += b | a + b的值存放到a中 | a = a + b |
2 | -= | a -= b | a - b的值存放到a中 | a = a - b |
3 | *= | a *= b | a * b的值存放到a中 | a = a * b |
4 | /= | a /= b | a / b的值存放到a中 | a = a / b |
5 | %= | a %= b | a % b的值存放到a中 | a = a % b |
No. | 運算符 | 范例 | 執行前 | 說明 | 執行后 | ||
a | b | a | b | ||||
1 | += | a += b | 12 | 3 | a + b的值存放到a中(同a = a + b) | 15 | 3 |
2 | -= | a -= b | 12 | 3 | a - b的值存放到a中(同a = a – b) | 9 | 3 |
3 | *= | a *= b | 12 | 3 | a * b的值存放到a中(同a = a * b) | 36 | 3 |
4 | /= | a /= b | 12 | 3 | a / b的值存放到a中(同a = a / b) | 4 | 3 |
5 | %= | a %= b | 12 | 3 | a % b 的值存放到a中(同a = a % b) | 0 | 3 |
6 | b++ | a *= b++ | 12 | 3 | a * b的值存放到a后,b加1(同a = a * b;b++) | 36 | 4 |
7 | ++b | a *= ++b | 12 | 3 | b加1后,再將a*b的值存放到a(同b++;a=a*b) | 48 | 4 |
8 | b-- | a *= b-- | 12 | 3 | a * b的值存放到a后,b減1(同a=a*b;b--) | 36 | 2 |
9 | --b | a *= --b | 12 | 3 | b減1 后,再將a*b的值存放到a(同b--;a=a*b) | 24 | 2 |
No. | 數據類型 | 大小/位 | 可表示的數據范圍 |
1 | long(長整數) | 64 | -9223372036854775808 ~ 9223372036854775807 |
2 | int(整數) | 32 | -2147483648 ~ 2147483647 |
3 | short(短整數) | 16 | -32768~32767 |
4 | byte(位) | 8 | -128 ~ 127 |
5 | char(字符) | 2 | 0 ~ 255 |
6 | float(單精度) | 32 | -3.4E38(-3.4´1038) ~ 3.4E38(3.4´1038) |
7 | double(雙精度) | 64 | -1.7E308(-1.7´10308)~ 1.7E308(1.7´10308) |
默認值
No. | 數據類型 | 默認值 |
1 | byte | (byte)0 |
2 | short | (short)0 |
3 | int | 0 |
4 | long | 0L |
5 | float | 0.0f |
6 | double | 0.0d |
7 | char | /u0000(空,'') |
8 | boolean | false |
新聞熱點
疑難解答