標籤:
// Java操作符\關係運算子\邏輯運算子\賦值運算子\字串串連符\三元運算子/* * 一 Java操作符 * * Java操作符都有哪些? * +, -, *, /, %, ++, -- * 這裡需要注意 a++ 和 ++a 的區別,後面說; *//*public class Javase{ public static void main(String[] args){ int a = 10; int b = 20; int c = 30; System.out.println( a+b );//a+b=30; System.out.println( b-a );//b-a=10; System.out.println( a*b );//a*b=200; System.out.println( b/a );//b/a=2; System.out.println( b%a );//這裡%是求餘操作符,b/a=2.....0;所以結果是0; System.out.println( c%b );//c/b=1...10;所以結果是10; a++;//相當於a=a+1; System.out.println( a );//結果為11; a--;//相當於a=a-1; System.out.println( a );//結果為10,因為上面a=11; }}*///------------------------------------------------------------------------------/* * 二 Java關係運算子 * * Java關係運算子都有哪些? * >, >=, <, <=, ==, !== * 關於多重運算中的優先順序問題,這裡建議用括弧括起來,避免腦子裡計算上的錯誤; * *//*public class Javase{ public static void main(String[] args){ int a = 10; int b = 10; boolean c = (a==b);//boolean的值只有true(真)和false(假),所以這裡是做一個判斷,判斷a是不是等於b,若判斷為真,輸出true,反之輸出false System.out.println( a>b );//這裡很明顯a和b是相等的,所以這裡結果會是false,後面的自己判斷 System.out.println( a>=b ); System.out.println( a<b ); System.out.println( a<=b ); System.out.println( a==b ); System.out.println( a != b ); }}*///------------------------------------------------------------------------------/* * 三 Java邏輯運算子 * 這個跟大學課程裡的門的體系一樣(與非門,或非門等等) * 判斷符: * & 位與 兩邊都是true,才是true * | 位或 一邊是true,結果才是true * ! 位非 取反 * ^ 位異或 兩邊邏輯值不相等 才是true * * 邏輯比較: * && 符號兩邊都為真才會為真,有一個錯都是假 * || 符號兩邊只要有一個為真就為真 * ! * ^ * * 舉個簡單的例子: * (1=2 & 1=1)----->左邊是假,右邊是真,但是判斷符是位與,有一個為假都是假,兩個為真才是真,所有這個結果是假false * (1=2 | 1=1)----->還是同一個,判斷符是位或,有一個為真就是真,結果是真ture * *//*public class Javase{ public static void main(String[] args){ System.out.println(5>3 & 5>4); System.out.println(5>3 && 5>4); System.out.println(3>5 & 6>7);//第二步仍然會運算 System.out.println(3>5 && 6>7);//一個為假就為假,第二步就不會運算 System.out.println(5>3 | 5>9);//仍然會運算 System.out.println(5>3 || 5>9); //一個為真就為真,所以後面不會再運算 System.out.println(5>11 | 5>10); System.out.println(5>11 || 5>10); //後面要算 System.out.println(!false); System.out.println(true ^ false);//true System.out.println(false ^ true);//true System.out.println(true ^ true);//false System.out.println(false ^ false);//false }}*///------------------------------------------------------------------------------/* * 四 賦值運算子 * * 賦值運算子都有哪些: * =(基本賦值運算子) * += 加等於 * -= 減等於 * *= 乘等於 * /= 除等於 * %= 餘等於 * * 怎麼用呢: * 例如: i += 10; 就向當於i = i + 10;就是讓i和10相加,然後再賦值給i; * * * 說到這裡,把之前留下的問題解決一下,就是i++;和++i;的區別,下面上例子. *//*public class Javase{ public static void main(String[] args){ int i = 10; //i = i++; //System.out.println( i );//輸出結果為10; i = ++ i; System.out.println( i );//輸出結果為11; //這是為什麼呢? //首先,i = i ++;是先賦值後++,而i=10;所以結果是10; //而i = ++i;是先++1,然後在賦值給i,所以結果為11; }}*///下面直接說賦值運算子,下面上例子===========================================/*public class Operator_04{ public static void main (String [] args) { //基本賦值預算符,試一下用byte試試=127 int a = 10; //+= a += 10; System.out.println(a); //-= a -= 5; System.out.println(a); //*= a *= 5; System.out.println(a); // /= a /= 15; System.out.println("a = " + a); System.out.println( 10/15 ); // %= a %= 2; System.out.println(a); //----------------------------------- //內部自動類型轉換 byte i = 10; //兩次運算;由於後面的1是一個整型;所以會自動轉換成整型,結果也是整型;但是前面的i變數是指定的byte型,把一個整型賦給byte型肯定報錯 //i = i + 1; //設個是一步運算;但是會預先進行資料類型轉換,轉換成本類的資料類型;所以會損失精度 i += 119; System.out.println("hello"); System.out.println(i); }}*///------------------------------------------------------------------------------/* * 五 字串串連符 * * 字串串連符: + * 說實話,把這個單獨拿出來做一章說有些浪費,這個符的作用在代碼和運行結果上看很容易明白,我就不扯沒用的了,只說幾個稍微值得注意的吧: * 字串串連符"+":即使數值加和運算子,也是字串串連符; * 他會進行自動資料類型轉換(boolean不參與轉換) * 運算結果也是字串類型 * *//*public class Operator_05{ public static void main (String [] args) { //字串串連符 System.out.println("PI=" + 3.14); int a = 10; int b = 12; System.out.println("a+b = " + (a+b)); //a+b=22 System.out.println("a+b = " + a+b); //a+b=1012 從左往右,挨個計算,資料類型挨個轉換 System.out.println(a + "+"+b+"=" +(a+b)); //10+12=22 括弧提高性運行層級,先運算 }}*///------------------------------------------------------------------------------/* * 六 三元運算子 * * 什麼是三元運算子? * 條件判別式 ? 真執行的語句 : 假執行的語句 * 上面就是三元運算子的寫法,感覺沒什麼可說的,還是直接上代碼吧 */public class Operator_06{ public static void main (String [] args) { boolean sex = false; //10 //這個不是語句;單獨的值,單獨的 char c = (sex ? ‘男‘ : ‘女‘); System.out.println(c); boolean isSuccess = true; System.out.println(isSuccess?‘s‘:"失敗"); }}
JavaSE複習日記 : Java操作符\關係運算子\邏輯運算子\賦值運算子\字串串連符\三元運算子