基本語法
一,運算符
java針對操控變量提供了一組豐富的運算符,可分爲:
- 算數運算符
- 關係運算符
- 位運算符
- 邏輯運算符
- 賦值運算符
- 其他運算符
1,算術運算符
運算符 | 描述 | 例子 |
---|---|---|
+ | 在運算符的另一端增加 | 10+20爲30 |
- | 減法 - 將右側的操作數從左側中減去 | 10-20爲-10 |
* | 乘法 - 將運算符兩端的值相乘 | 10*20爲200 |
/ | 除法 - 將右側的操作數除左側的操作數 | 20/10爲2 |
% | 係數 - 用右側操作數除左側操作數並返回餘數 | 20%10爲0 |
++ | 增量 - 給操作數的值增加上1 | 20++爲21 |
– | 減量 - 給操作數的值減去1 | 20–爲19 |
2,關係運算符
運算符 | 描述 | 例子 |
---|---|---|
== | 檢查兩邊操作數的值是否相等,如果相等則爲真 | (10==20)不爲真 |
!= | 檢查兩邊操作數的值是否相等,如果不相等爲真 | (10!=20)爲真 |
> | 檢查左邊操作數的值是否大於右邊操作數的值,如果大於爲真 | (10>20)不爲真 |
< | 檢查左邊操作數的值是否小於右邊操作數的值,如果小於爲真 | (10<20)爲真 |
>= | 檢查左邊操作數的值是否大於等於右邊操作數的值,如果大於等於爲真 | (10>=20)不爲真 |
<= | 檢查左邊操作數的值是否小於等於右邊操作數的值,如果小於等於爲真 | (10<=20)爲真 |
3,位運算符
java 定義了幾種運算符,這類運算符可被運用於整數型式,long, int,short,字符型和字節型。
位運算符作用於二進制系統間傳輸標準,並執行按位操作。假設如果 a 等於 60;b 等於 13;現在在二進制型式下它們就如下所示:
a = 0011 1100
b = 0000 1101
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
運算符 | 描述 | 例子 |
---|---|---|
& | 如果兩邊的值都是1,則結果爲1,只要有0,結果都爲0(按位與) | a&b爲12,即0000 1100 |
| | 兩邊的值只要有1,則結果爲1,兩邊爲0,結果才爲0(按位或) | a|b爲61,即0011 1101 |
~ | 每個值取相反的值(按位非) | ~a爲-61,即1100 0011 |
>> | 左側操作數的值根據右側操作數指定的位的數量移至右側(二進制右移運算符) | A >> 2 爲 15即1111 |
<< | 左側操作數的值根據右側操作數指定的位的數量移至左側(二進制左移運算符) | A << 2 爲240 ,即1111 0000 |
4,邏輯運算符
假設a爲真,b爲假。
運算符 | 描述 | 例子 |
---|---|---|
&& | 稱爲邏輯與運算符。如果雙方操作數都不爲零,那麼條件爲真 | (a && b) 爲真. |
|| | 稱爲邏輯或運算符. 如果雙方操作數其中的任何一個都不爲零,那麼條件爲真 | (a || b) 爲真. |
! | 稱爲邏輯非運算符. 用作翻轉操作數的邏輯狀態。如果一個條件爲真,那麼邏輯非運算符爲假 | !(a&& b) 爲真 |
5,賦值運算符
6,其他運算符
二,訪問權限
1,java中有四個訪問權限:public,protected,private,default
1,public:java中訪問限制最寬的的修飾符,一般稱爲"公共的"。被修飾的類,屬性,方法不僅可以跨類訪問,也可以跨包訪問。
2,protected:介於public和private之間的訪問修飾符,一般稱爲"保護訪問權限"。被修飾的屬性和方法只能本類的方法以及子類訪問,即使子類在不同包中也可以訪問。
3,private:java中訪問限制最窄的修飾符,一般稱爲"私有的",。被修飾的屬性和方法只能被該類的對象訪問,子類不能訪問,,更不允許跨包訪問。
4,default:即不加任何訪問修飾符,通常稱爲“默認訪問權限“或者“包訪問權限”。該模式下,只允許在同一個包中進行訪問。
2,四種修飾符的訪問權限範圍
修飾符 | 同一個類 | 同一個包 | 不同包的子類 | 不同包的非子類 |
---|---|---|---|---|
public | √ | √ | √ | √ |
protected | √ | √ | √ | |
default | √ | √ | ||
private | √ |
三,循環結構
java中主要有三種循環結構:
- while語句
- do-while語句
- for語句
1,while語句
while關鍵字的中文意思是”當什麼時候“,也也就是條件成立時循環相應的代碼
while(布爾表達式){
//循環內容
}
只要布爾表達式爲true,循環就會一直執行。
執行流程:在執行while語句時,首先判斷循環條件,如果循環條件爲false,則直接執行while語句後續的代碼,如果循環條件爲true,則執行循環體代碼,然後再判斷循環條件,一直到循環條件不成立爲止。
例子:
public class Test{
public static void main(String args[]){
int i = 0;
while(i < 5){
System.out.print(i);
i++;
}
}
}
結果:
0 1 2 3 4
循環內容是從上到下執行,我們從上面的例子進行一個小更改,就可以看出差別:
public class Test{
public static void main(String args[]){
int i = 0;
while(i < 5){
i++;
System.out.print(i);
}
}
}
結果:
1 2 3 4
2,do-while語句
do-while語句由關鍵字do和while組成,是循環語句中最典型的“先循環再判斷”的流程控制結構,這個和其它2個循環語句都不相同。
do{
(代碼內容)
}while(布爾表達式)
注意:布爾表達式在循環體的後面,所以語句塊在檢測布爾表達式之前已經執行了。 如果布爾表達式的值爲 true,則語句塊一直執行,直到布爾表達式的值爲 false。
循環多次:
public class Test{
public static void main (String args[]){
int i = 0;
do{
System.out.print(i);
i++;
}while(i<5)
}
}
結果:
0 1 2 3 4
只循環一次:
public class Test{
public static void main (String args[]){
int i = 0;
do{
System.out.print(i);
i++;
}while(i<0)
}
}
結果:
0
3,for語句
for語句關鍵字的意思是"當…的時候",是實際開發中比較常用的循環語句,其語法格式相對於前面的循環語句來說稍顯複雜,但是在熟悉以後,將會發現其語法安排的比較條理,把循環控制和循環體很清晰的分開。
for(初始化語句;循環條件;迭代語句){
循環體
}
執行流程:
1,執行初始化語句。
2,判斷循環條件,如果結果是false,則結束循環,否則執行循環。
3,執行循環體。
4,執行迭代語句。
5,跳轉到步驟2重複執行。
初始化語句在循環中只執行一次。