1. 程式人生 > 實用技巧 >LeetCode 劍指 Offer 11. 旋轉陣列的最小數字 | Python

LeetCode 劍指 Offer 11. 旋轉陣列的最小數字 | Python

賦值操作

class SetValueTest 
{
	public static void main(String[] args) 
	{
		//賦值符號:=
		int i1 = 10;
		int j1 = 10;
		int i2,j2;
		//連續賦值
		i2 = j2 = 10;
        int i3 = 10 ,j3= 20;

	}
}

  “+=”“-=”“/=”"*="“%=”操作

class SetValueTest 
{
	public static void main(String[] args) 
	{
		//賦值符號:=
		int i1 = 10;
		int j1 = 10;
		int i2,j2;
		//連續賦值
		i2 = j2 = 10;
        int i3 = 10 ,j3= 20;
		//*******
		int num = 5;
		num -= 2; // 相當於num= num-2;
		System.out.println(num);
		int num1 = 10;
		num1 += 2;//相當於num1 = num1 +2;
        System.out.println(num1);
		int num2 = 12;
		num2 %= 5; //相當num2 = num2 % 5;
		System.out.println(num2);  
		int num3 = 3;
		num3 *= 4;//相當於num3= num3 * 4
		System.out.println(num3);
		int num4 = 4;
		num4 /=2; //相當於num4 = num4 /2
		System.out.println(num4);
	}
}
---------- java ----------
3
12
2
12
2

輸出完成 (耗時 0 秒) - 正常終止

  比較運算子

運算子 運算 示例 結果
== 相等於 4==3 false
!= 不等於 4!=3 true
< 小於 4< 3 false
> 大於 4>3 true
<= 小於等於 4<=3 false
>= 大於等於 4>=3 true
instanceof 檢查是否是類的物件 "Hello" instancefo String true

class   CompareTest
{
	public static void main(String[] args) 
	{
		//System.out.println("Hello World!");
		int i = 10;
		int j = 20;
		System.out.println(i==j); //結果false
		System.out.println(i>=j); //false
		System.out.println(i<=j); //true
		System.out.println(i > j);//false
		System.out.println(i<j); // true
		System.out.println(i != j); //true
	}
}
---------- java ----------
false
false
true
false
true
true

輸出完成 (耗時 0 秒) - 正常終止

  注意

class   CompareTest
{
	public static void main(String[] args) 
	{
		//System.out.println("Hello World!");
		int i = 10;
		int j = 20;
		System.out.println(i==j); //結果false
		System.out.println(i>=j); //false
		System.out.println(i<=j); //true
		System.out.println(i > j);//false
		System.out.println(i<j); // true
		System.out.println(i != j); //true
		System.out.println(i=j);   //注意操作它是賦值操作
	}
}
---------- java ----------
false
false
true
false
true
true
20

輸出完成 (耗時 0 秒) - 正常終止

  邏輯運算子

&邏輯與 &&短路與 |邏輯或 ||短路或 !邏輯非 ^ 邏輯異或

邏輯與和短路與測試

class   CompareTest
{
	public static void main(String[] args) 
	{
		//System.out.println("Hello World!");
		//int i = 10;
		//int j = 20;
		//System.out.println(i==j); //結果false
		//System.out.println(i>=j); //false
		//相同2:當符號左邊是true時,後面都執行,運算結果都是相同的
		//不同點:當符號左邊是false時,&繼續執行後面操作,&& 不執行後面操作
		boolean  b1 = true;
		int num1 = 10;
		if (b1 &(num1++ >0))
		{
			System.out.println("我在北京"+num1);
		}else{
		System.out.println("我現在在南京"+num1);
		}
		boolean  b2 = true;
		int num2 = 10;
		if (b2 &&(num2++ >0))
		{
			System.out.println("我在北京"+num2);
		}else{
			System.out.println("我現在在南京"+num2);
		}
		boolean  b3 = false;
		int num3 = 10;
		if (b3 &(num3++ >0))
		{
			System.out.println("我在北京"+num3);
		}else{
		System.out.println("我現在在南京"+num3);
		}
		boolean  b4 = false;
		int num4 = 10;
		if (b4 &&(num4++ >0))
		{
			System.out.println("我在北京"+num4);
		}else{
			System.out.println("我現在在南京"+num4);
		}
	}	
}
 ---------- java ----------
我在北京11
我在北京11
我現在在南京11
我現在在南京10

輸出完成 (耗時 0 秒) - 正常終止

  邏輯或與短路或

class   CompareTest
{
	public static void main(String[] args) 
	{
		//相同2:當符號左邊是false時,後面都執行,運算結果都是相同的
		//不同點:當符號左邊是true時,|繼續執行後面操作,|| 不執行後面操作
		boolean  b1 = true;
		int num1 = 10;
		if (b1 |(num1++ >0))
		{
			System.out.println("我在北京"+num1);
		}else{
		System.out.println("我現在在南京"+num1);
		}
		boolean  b2 = true;
		int num2 = 10;
		if (b2 ||(num2++ >0))
		{
			System.out.println("我在北京"+num2);
		}else{
			System.out.println("我現在在南京"+num2);
		}
		boolean  b3 = false;
		int num3 = 10;
		if (b3 |(num3++ >0))
		{
			System.out.println("我在北京"+num3);
		}else{
		System.out.println("我現在在南京"+num3);
		}
		boolean  b4 = false;
		int num4 = 10;
		if (b4 ||(num4++ >0))
		{
			System.out.println("我在北京"+num4);
		}else{
			System.out.println("我現在在南京"+num4);
		}
	}	
}
---------- java ----------
我在北京11
我在北京10
我在北京11
我在北京11

輸出完成 (耗時 0 秒) - 正常終止
 

  位運算子

運算子 運算 示例
<< 左移 3<<2=12--->3*2*2=12
>> 右移 3>>1= 1 --->3/2=1
>>> 無符號右移 3>>>1=1 --->3/2=1
& 與運算 6&3=2
| 或運算 6|3=7
^ 異或運算 6^3=5
~ 取反運算 ~6=-7

交換變數的值

class   CompareTest
{
    public static void main(String[] args) 
    {
        //相同2:當符號左邊是false時,後面都執行,運算結果都是相同的
        //不同點:當符號左邊是true時,|繼續執行後面操作,|| 不執行後面操作
        //boolean  b1 = true;
        //int num1 = 10;
        //if (b1 |(num1++ >0))
        //{
        //    System.out.println("我在北京"+num1);
        //}else{
        //System.out.println("我現在在南京"+num1);
        //}
        //boolean  b2 = true;
        //int num2 = 10;
        //if (b2 ||(num2++ >0))
        //{
        //    System.out.println("我在北京"+num2);
        //}else{
        //    System.out.println("我現在在南京"+num2);
        //}
        //boolean  b3 = false;
        //int num3 = 10;
        //if (b3 |(num3++ >0))
        //{
        //    System.out.println("我在北京"+num3);
        //}else{
        //System.out.println("我現在在南京"+num3);
        //}
        //boolean  b4 = false;
        //int num4 = 10;
        //if (b4 ||(num4++ >0))
        //{
        //    System.out.println("我在北京"+num4);
        //}else{
        //    System.out.println("我現在在南京"+num4);
        //}
        //交換兩個變數的值
        int num1 = 10;
        int num2 = 20;
        System.out.println("num1 = " + num1 + " ,num2 = " +num2);
        //方法1:
        int temp = num1;
        num1 = num2;
        num2 = temp;
        System.out.println("num1 = " +num1 +" ,num2 = " + num2);
    }    
}
---------- java ----------
num1 = 10 ,num2 = 20
num1 = 20 ,num2 = 10

輸出完成 (耗時 0 秒) - 正常終止 

三元運算子

/*
三元運算子
1.結構:(條件表示式)?表示式1:表示式2
說明
(1)條件表示式結構為boolean型別
(2)根據條件表示式的真或假,覺得執行表示式1或者2
     如果表示式為true,就執行表示式1
	 如果表示式為false,就執行表示式2

*/
class SanYuan 
{
	public static void main(String[] args) 
	{
		//獲取兩個整數的較大值
		int m = 12;
		int n = 5;
		int max = (m > n)? m:n;
		System.out.println(max+"大");
	}
}
---------- java ----------
12大

輸出完成 (耗時 0 秒) - 正常終止