感激相遇 你好 我是阿ken
特此宣告 未經允許 不得轉載
🎈嘰里庫拉傳送門
- 📚 運算子
- 📌算術運算子(+、-、*、/、%)
- 📌自增、自減運算子
- 📌關系運算子(>、>=、<、<=、==、!=)
- 📌邏輯運算子(&、|、!、&&、||)
- 📌賦值運算子(=、+=、-=、*=、/=、%=)
- 📌條件運算子
- 📌字串連接運算子
- 📌位運算子
- 📌instanceof 運算子
- 📌switch 開關陳述句
- 📚 回圈陳述句
- 📌while 回圈
- 📌do...while 回圈
- 📌for 回圈陳述句
- 🌊 回饋粉絲
📚 運算子
📌算術運算子(+、-、*、/、%)
重點:++
++ 無論出現在變數前還是后,運算結束后,一定會自加1,
📌自增、自減運算子
自增自減運算子(+、-),++、–是單目運算子,可以放在操作元之前,也可以放在操作元之后,操作元必須是一個整型或浮點型變數,作用是使變數的值增1或減1,
++x和x++的不同之處在于,++x是先執行x=x+1再使用x的值,而x++是先使用x的值再執行x=x+1,
//
int i = 10;
i++;
System.out.println(i); // 11
int k = 10;
++k;
System.out.println(k); // 11
++出現在變數前:
int i = 10;
int k = ++i;
System.out.println(); // 11
System.out.println(); // 11
++出現在變數后:
int i = 10;
int k = i++;
System.out.println(k); // 10
System.out.println(i); // 11
int i = 10;
System.out.println(i++); // 10
// 拆代碼:
int temp = i++;
System.out.println(temp); // 10
System.out.println(i); // 11
int i = 10;
System.out.println(++i); // 11
// 拆代碼:
int temp = ++i;
System.out.println(temp); // 11
System.out.println(i); // 11
// 原文出自: CSDN-請叫我阿ken
📌關系運算子(>、>=、<、<=、==、!=)
關系運算子結果都是布爾型別(true/false)
📌邏輯運算子(&、|、!、&&、||)
邏輯運算子要求兩邊都是布爾型別,并且最終結果還是布爾型別,
& 兩邊都是true,結果才是true
| 一邊是true,結果就是true
!取反
&& 實際上和&運算結果完全相同,區別在于:&&存在短路現象,
左邊為false的時候:&&短路,
左邊為true的時候: || 短路,
📌賦值運算子(=、+=、-=、*=、/=、%=)
重要規則:擴展賦值運算子在使用的時候要注意,不管怎么運算,最終的運算結果型別不會變,
byte x = 100; // byte 最大值127
x += 1000; // 編譯可以通過,x變數還是byte型別,只不過損失精度了,
x += 1000; 等同于: x = (byte)(x + 1000);
int i = 10;
i += 10; // 等同于: i = i + 10; 累加,
// 原文出自: CSDN-請叫我阿ken
📌條件運算子
三目運算子語法: 布爾運算式 ? 運算式1:運算式2
布爾運算式為 true,選擇運算式1作為結果,反之選擇運算式2作為結果,
📌字串連接運算子
+…
+兩邊都是數字,進行求和
+有一邊是字串,進行字串的拼接
+有多個的話,遵循自左向右依次執行:1 + 2 + 3
如果想讓其中某個加號先執行,可以添加小括號:1+(2+3)
注意:字串拼接完之后的結果還是一個字串,
技巧:怎么把一個變數塞到一個字串當中,
String name = "jackson";
System.out.println("登陸成功,歡迎"+name+"回來");
// 原文出自: CSDN-請叫我阿ken
📌位運算子
整形資料在記憶體中以二進制的形式表示,例如一個 int 型變數在記憶體中占4個位元組共32位,int 型資料 7 的二進制表示是:
00000000 00000000 00000000 00000111
左面最高位是符號位,最高位是 0 表示正數,是 1 表示負數,負數采用補碼表示,例如-8的補碼表示是:
正數的補碼,原碼,反碼都是相同的,
+8的補碼,原碼,反碼,都是 0000 1000,
負數的補碼,原碼,反碼都是用1放在符號位,后面7位有變化:
-8的原碼:1000 1000;
-8的反碼:1111 0111;
-8的補碼:1111 1000,
// 原文出自: CSDN-請叫我阿ken
!!!!
📌instanceof 運算子
該運算子是二目運算子,左面的操作元是一個物件,右面是一個類,當左面的物件是右面的類或子類創建的物件時,該運算子運算的結果是 true,否則是false(有關細節后續會講解)
📌switch 開關陳述句
switch(運算式){
case 常量值1;
若干個陳述句
break;
case 常量值2;
若干個陳述句
break;
......
case 常量值n;
若干個陳述句
break;
default;
若干陳述句
}
// switvh陳述句中運算式的值可以為byte、short、int、char型;常量值1到常量值n,也是byte、short、int、char型,而且要互不相同,
// 原文出自: CSDN-請叫我阿ken
📚 回圈陳述句
📌while 回圈
- 其語法機制及執行原理:
while (布爾運算式) {
回圈體;
}
執行原理:如果布爾運算式為true,就執行回圈體,回圈體結束之后,再次判斷布爾運算式的結果,如果還是true,則再執行回圈體,如果為false,則回圈結束, - 案例 死回圈:
while(true){
System.out.println("死回圈");
}
// 原文出自: CSDN-請叫我阿ken
控制陳述句
- 關于回圈陳述句
for 回圈、while 回圈、do…while 回圈
什么是回圈陳述句,為什么要使用這種陳述句?
因為在現實世界當中,有很多事情都是需要反復/重復的去做,為了減少代碼量,要使用回圈陳述句,
要求:
第一點:必須要將語法結構背會,
第二點:必須要理解他們的執行原理,
去實作案例,去實作功能,
先從簡單的案例開始,慢慢的經過一個程序你才能解決復雜的問題,
📌do…while 回圈
do {
回圈體;
} while(布爾運算式);
/*最后這個分號很關鍵*/
// 原文出自: CSDN-請叫我阿ken
運行原理:先執行回圈陳述句,再判斷布爾運算式,如果為true就繼續執行,如果為false就停止回圈,
int i = 0;
do{
System.out.println(i); // 0 1 2 3...8 9
i++;
// 也可直接把上兩行代碼等價替換為
// System.out.println(i++);
}while(i < 10);
int i = 0;
do{
System.out.println(++i); // 1 2 3 ... 8 9 10
}while(i < 10);
int k = 100;
System.out.println(++k); // 101
System.out.println(k); // 101
int m = 10;
System.out.println(m++); // 10
System.out.println(m) // 11
// 原文出自: CSDN-請叫我阿ken
轉向陳述句:
break、continue、return(后期整理到方法時再詳細學習)
📌for 回圈陳述句
for(運算式1; 運算式2; 運算式3) {
回圈陳述句;
}
// 原文出自: CSDN-請叫我阿ken
// anli
public class Example_n {
public static void main(String args[]){
long sum = 0, a = 8, item = a, n = 12, i = 1;
for(i = 1; i <= n; i++) {
sum = sum + item;
item = item*10 + a;
}
System.out.println(sum);
}
}
// 原文出自: CSDN-請叫我阿ken
if、switch 屬于分支陳述句,屬于選擇陳述句(選擇結構),
for、while、do…while…這些都是回圈陳述句(回圈結構),
break、continue、return 屬于轉向結構,
for、while完全可以互換,只不過就是語法格式不一樣,
🌊 回饋粉絲
感謝閱讀 我是阿ken
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/300739.html
標籤:java
