人生苦短我學Java-3-String型別/多種運算子
阿新 • • 發佈:2020-12-06
一、String型別變數的使用
1、String屬於引用資料型別,翻譯為:字串(區分大小寫的哦)
2、宣告string型別變數時,使用雙引號,一對""
3、String可以和8種基本資料型別變數做運算,且運算只能是連線運算:+,並且輸出資料型別為:String
public class a_string { public static void main(String[] args) { String a = "泡泡龍"; String b = " 1"; String c = "姓名:"; System.out.println(c+ a + b); } }
二、運算子
1、算術運算子:
public class a_number { public static void main(String[] args) { int a = 2; int b = 4; // 正號:+ System.out.println(+a); // 負號:- 負負會得正 System.out.println(-b); // 加:+ System.out.println(a + b);// 減:- System.out.println(a - b); // 乘:* System.out.println(a * b); // 除:/ System.out.println(b / a); // 取餘(取模):% System.out.println(b % a); // 自增(前):++ System.out.println("自增前:" + +a); // 自增(後):++ int age = 10; System.out.println("自增後,原來數值為:" + age++); // 先列印10,再10+1=11 System.out.println("自增後:" + age); // 輸出11 // 自減(前):-- System.out.println("自減前:" + --a); // 自減(後):-- int num = 10; System.out.println("自減後,原來數值為" + num--); // 先列印10,再10-1=9 System.out.println("自減後:" + num); // 輸出9 // 字元拼接:+ char c = 'h'; String d = "ello"; System.out.println("字元拼接:" + c + d); /* 練習:求三位數長度的個個十百位數 */ int number = 189; System.out.println("百位數為:" + number / 100); System.out.println("十位數為:" + number / 10 % 10); System.out.println("個位數為:" + number % 10); /* 自增其它數值 */ int num1 = 10; num1 += 2; System.out.println(num1); /* 自增其它數值 */ int num2 = 10; num2 -= 2; System.out.println(num2); } }
練習:
/* 練習:求三位數長度的個個十百位數 */
public class a_number { public static void main(String[] args) { /* 練習:求三位數長度的個個十百位數 */ int number = 189; System.out.println("百位數為:" + number / 100); System.out.println("十位數為:" + number / 10 % 10); System.out.println("個位數為:" + number % 10); } }
百位數為:1
十位數為:8
個位數為:9
2、比較與運算子
public class a_compare { public static void main(String[] args) { int a = 10; int b = 10; 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); System.out.println(a > b); System.out.println(a = b); } }
3、邏輯運算子
邏輯運算子用於連線布林型表示式“&”和“&&”的運算的結果都相同,區別:
- &時,左邊無論真假,右邊都進行運算;
- &&時,如果左邊為真,右邊參與運算,如果左邊為假,那麼右邊不參與運算。
public class a_compare { public static void main(String[] args) { /* 2、邏輯運算1 且:& 或:| 非:!,取反 異或:^ */ boolean i = true; boolean o = false; System.out.println(i & i); System.out.println(o | i); System.out.println(!o); // 取反,原本o為false,取反變為true System.out.println(i ^ i); // 異或,兩值相同時為flase System.out.println(i ^ o); // 異或,兩值不相同時為true // 異或,類似且的取反,如下: System.out.println(!(i & i)); System.out.println(!(i & o)); /* 2、邏輯運算2 短路,且:&,值有一個為false,那全部為false,當值全為true時才為true 短路,或:|,值有一個為true,那就為true,當值全為false時才為false */ boolean aa = true; boolean bb = false; System.out.println(aa && bb); System.out.println(aa || aa); } }
4、位運算子
位運算是直接對整數的二進位制進行的運算,開發過程中個人認為不是很常用;public class BitTest { public static void main(String[] args) { int a = 2; int b = 8; //面試題:最高效方式的計算2* = 8, 2 << 3 或8 <<1 // 相當於每向左移一位就 * 3 System.out.println("a << 2 :" + (a << 3)); // 相當於每向右移一位就 / 2 System.out.println("a >> 2 :" + (b >> 2)); int c = 12; int d = 5; System.out.println("c & d:" + (c & d)); System.out.println("c & d:" + (c | d)); System.out.println("c & d:" + (c ^ d)); } }
5、三元運算子
結構:(條件表示式)? 表示式1:表示式2
結果為布林型別;
public class a_San { public static void main(String[] args) { // max:取最大值 int a = 5; int b = 10; int max = (a > b) ? a : b; System.out.println(max); // 巢狀 String maxStr = (a > b) ? "a大" : ((a == b) ? "ab相等" : "b大"); System.out.println(maxStr); // 求三個數的最大值 int c = 11; int maxSan = ((a > b) ? a : b) > c ? ((a > b) ? a : b) : c; System.out.println(maxSan); } }
最後歡迎來大家QQ交流群一起學習:482713805