JAVA基礎—02.運算符&控制語句

愛轉圈筆記

勤思、體悟、總結、分享

運算符&控制語句

一、運算符

  • 賦值運算符
    • 賦值=
  • 算術運算符
    • 加+
    • 減-
    • 乘*
    • 除/
    • 取餘%
    • ++(自增)
    • –(自減)
  • 關係運算符
    • 大於>
    • 小於<
    • 等於==
    • 大於等於>=
    • 小於等於<=
    • 不等於!=
  • 邏輯運算符
    • 與&&
    • 或||
    • 非!
  • 位運算符
    • &
    • |
    • <<(左移一位,相當於*2)
    • >>(右移一位,相當於/2)
  • 擴展運算符
    • +=
    • -=
    • *=
    • /=
    • %=
  • 三目運算符
    • (布爾表達式)?爲真返回:爲假返回
public class Operator {
	//賦值運算符
	public void operator1(){
		int a = 1;//將  a 賦值爲1
	}
	//算術運算符
	public void operator2(){
		int a = 1 + 1;//加
		int b = 2 - 1;//減
		int c = 2 * 2;//乘
		int d = 4 / 2;//除
		int e = 12 % 5;//取餘(模運算)
		
		a++;//自增,等同於a = a + 1;先使用,再加1
		++a;//自增,等同於a = a + 1;先加1,再使用
		
		b--;//自減,等同於a = a - 1;先使用,再減1
		--b;//自減,等同於a = a - 1;先減1,再使用
		
	}
	//關係運算符
	public void operator3(){
		int a = 1;//比較值a
		int b = 2;//比較值b
		
		boolean c1 = a > b ;//比較 a 是否大於 b,結果賦值給c1
		boolean c2 = a < b ;//比較 a 是否小於 b,結果賦值給c2
		boolean c3 = a == b ;//比較 a 是否等於 b,結果賦值給c3
		boolean c4 = a >= b ;//比較 a 是否大於等於 b,結果賦值給c4
		boolean c5 = a <= b ;//比較 a 是否小於等於 b,結果賦值給c5
		boolean c6 = a != b ;//比較 a 是否不等於 b,結果賦值給c6
	}
	//邏輯運算符
	public void operator4(){
		boolean a = true;//比較值a
		boolean b = false;//比較值b
		
		boolean c1 = a && b;//a和b同時爲true,c1爲true,否則爲false
		boolean c2 = a || b;//a和b有1個爲true,c2爲true,否則爲false
		boolean c3 = !a;//取反,若a爲true 則c3爲false
	}
	//位運算符
	public void operator5(){
		int a = 100;//運算值a,二進制:     1100100
		int b = 1000;//預算值b,二進制:1111101000
		
		//二進制位運算:0和1相或爲1,相與爲0,0和0相與相或都爲0,1和1相與相或都爲1
		int c1 = a & b;//按位與運算,c1二進制:1100000     十進制:96
		int c2 = a | b;//按位或運算,c2二進制:1111101100  十進制:1004
		int c3 = a << 1;//按位向左移1位,相當於乘2,c3十進制:200
		int c4 = a >> 2;//按位向右移1位,相當於除2,c4十進制:25
		//位運算效率較高,但計算較複雜,初學者謹慎使用,二進制運算方法請自行查找
	}
	//擴展運算符
	public void operator6(){
		int a = 22;//運算值a
		a += 2;//等價於a = a + 2;
		a -= 2;//等價於a = a - 2;
		a *= 2;//等價於a = a * 2;
		a /= 2;//等價於a = a / 2;
		a %= 2;//等價於a = a % 2;
	}
	//三目運算符
	public void operator7(){
		int a = 1;//比較值1
		int b = 2;//比較值2
		String str = a > b ? "a" : "b";//若a>b則將“a”賦值str,否則將“b”賦值str 
	}
}

二、控制語句

1. 順序結構

程序中代碼按順序執行

2. 選擇結構

if(){}

if(){} else{}

if(){} else if(){} else{}

switch(){}(多值選擇時使用,表達式爲int或自動轉爲int的類型以及枚舉)

3. 循環結構

while(先判斷後執行)

for(先判斷後執行)

do while(先執行後判斷)

4. 控制

break:強制終止當前循環。

continue:停止本次循環在continue後面的代碼,執行下一次循環。

public class ControlStatement {

	public static void main(String[] args){
		//順序結構,程序從上到下按順序執行代碼
		caseStructure();
		loopStructure();
	}
	
	//選擇結構
	static void caseStructure(){
		int a = 1;//比較值1
		int b = 2;//比較值2
		
		//if判斷
		if(a>b){
			//若a>b,則執行此處代碼,否則跳過此處向下執行
		}
		
		//多重if判斷
		if(a>b){
			//若a>b,則執行此處代碼
		}else if(b==a){
			//若b==a,則執行此處代碼
		}else{
			//以上條件都不成立時,則執行此處代碼
		}
		
		//switch選擇結構
		switch(a){//每個case下的break必須加上,否則會按順序執行,失去選擇的意義
		case 1://當a=1時,執行下面b=10
			b = 10;
			break;
		case 2://當a=2時,執行下面b=100
			b = 100;
			break;
		case 3://當a=3時,執行下面b=1000
			b = 1000;
			break;
		default://當a沒有匹配case中的值時,執行下面b=4
			b = 4;
			break;
		}
	}
	
	//循環結構
	static void  loopStructure(){
		String str = "abc";
		//for循環
		for(int i=0;i<10;i++){
			str = "123";
			continue;//停止本次循環在continue後面的代碼,執行下一次循環。
		}
		
		//while循環,判斷是否成立,若成立則執行
		while(true){
			str = "def";
			break;//強制終止當前循環,只能在循環體內和switch語句體內使用break;
		}
		
		//do while 循環,先執行do內的代碼,再進行判斷
		do{
			str = "def";
		}while("abc".equals(str));
		
	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章