Rumah >Java >javaTutorial >Terangkan pengendali Java secara terperinci (perkongsian ringkasan)
Artikel ini membawa anda pengetahuan yang berkaitan tentang java, yang terutamanya memperkenalkan isu yang berkaitan dengan pengendali java, termasuk pengendali aritmetik, pengendali hubungan, pengendali logik, dsb. , harap ia membantu semua orang.
Pembelajaran yang disyorkan: "tutorial java"
运算符 | 含义 |
---|---|
求和 | |
- | 相减 |
* | 乘积 |
/ | 商 |
% | 求余数(求模) |
自加一 | |
– | 自减一 |
, dan apabila melakukan operasi tugasan 先自加一
1.2 Selepas pembolehubah
int x = 100; int y = ++x; 步骤: ② ① System.out.println(x); // 101 System.out.println(y); // 101Apabila ia muncul selepas pembolehubah, ia akan menjadi
dan kemudian tambah 1先做赋值运算
1.3 Khususnya, dalam cetakan
int m = 20; int n = m++; 步骤: ① ② System.out.println(n); // 20 System.out.println(m); // 21
int c = 90; System.out.println(c++); // 传,这个“传”在这里有一个隐形的赋值运算。90 // 把上面代码拆解开 //int temp = c++; //System.out.println(temp); int d = 80; System.out.println(++d); //81 // 拆解 //int temp2 = ++d; //System.out.println(temp2);2.1 --Di hadapan pembolehubah Apabila – muncul sebelum pembolehubah, ia akan menjadi
, dan apabila melakukan operasi tugasan 先自减一
2.2 – selepas pembolehubah
, dan kemudian dikurangkan dengan 1先做赋值运算
Untuk operator: 1. Boleh muncul sebelum pembolehubah atau selepas pembolehubah. 2. Tidak kira sama ada ia muncul sebelum atau selepas pembolehubah, secara ringkasnya, selepas perlaksanaan selesai, nilai pembolehubah pasti akan meningkat sebanyak 1.
2. Pengendali perhubungan
运算符 | 含义 |
---|---|
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
== | 等于 |
!= | 不等于 |
: Keputusan semua pengendali perhubungan adalah daripada jenis Boolean, sama ada benar atau salah, tidak nilai lain mungkin. 3. Operator logik
运算符 | 含义 | 结果 |
---|---|---|
& | 逻辑与(可以翻译成并且) | 两边都是true,结果才是true |
│ | 逻辑或(可以翻译成或者) | 有一边是true,结果就是true |
! | 逻辑非(取反) | !true = false、!false = true |
&& | 短路与 | 两边都是true,结果才是true |
││ | 短路或 | 有一边是true,结果就是true |
短路
1.2 Apakah fenomena litar pintas?
int x = 10; int y = 11; System.out.println(x > y & x > y++); //false // 通过这个测试得出:x > y++ 这个表达式执行了。 System.out.println(y); // 12 //测试短路与&& int m = 10; int n = 11; // 使用短路与&&的时候,当左边的表达式为false的时候,右边的表达式不执行 // 这种现象被称为短路。 System.out.println(m > n && m > n++); System.out.println(n); // 11Ungkapan di sebelah kanan tidak dilaksanakan Fenomena ini dipanggil fenomena litar pintas. <h3></h3>1.3 Bila hendak menggunakan && dan bila hendak menggunakan &? <p></p>Dari segi kecekapan, && adalah lebih cekap daripada &. <h3> Kerana logik DAN &, tidak kira apa hasil ungkapan pertama, ungkapan kedua pasti akan dilaksanakan. </h3> <p>Dalam pembangunan masa hadapan, litar pintas dan && dan logik DAN masih perlu wujud bersama pada masa yang sama. <br> Dalam kebanyakan kes, adalah disyorkan untuk menggunakan litar pintas DAN && Hanya apabila anda perlu melaksanakan kedua-dua ungkapan kiri dan ungkapan kanan, anda akan memilih logik DAN &. </p> <p>2. Litar pintas atau || 🎜>Apabila menggunakan litar pintas dan &&, apabila ungkapan di sebelah kiri ialah <br>, ungkapan di sebelah kanan tidak dilaksanakan </p> <h2></h2> <p>Apabila menggunakan litar pintas atau ||, apabila ungkapan di sebelah kiri ialah Apabila hasil formula ialah <strong>, ungkapan di sebelah kanan tidak dilaksanakan </strong></p> <pre class="brush:php;toolbar:false"> int x = 10; int y = 11; System.out.println(x < y | x > y++); //teur // 通过这个测试得出:x > y++ 这个表达式执行了。 System.out.println(y); // 12 //测试短路或|| int m = 10; int n = 11; // 使用短路或||的时候,当左边的表达式为true的时候,右边的表达式不执行 // 这种现象被称为短路。 System.out.println(m < n || m > n++); System.out.println(n); // 11
false
4. Pengendali tugasan 注:除了第一个是赋值运算符,其他都死拓展赋值运算符!!
使用扩展赋值运算符
的时候,永远都不会改变
运算结果类型。
int m = 10; m += 10; 类似于 m = m + 1;------->注意是类似!!!! 实际不同: i = i + 10; 和 i += 10;一样吗? byte i = 10; i += 10;----->没报错 其实 x += 1 等同于:x = (byte)(x + 1); i = i + 10;---->错误: 不兼容的类型: 从int转换到byte可能会有损失 编译器检测到x + 1是int类型,int类型不可以直接赋值给byte类型的变量x! 详见Java类型转换的时候需要遵循的规则第六点 i += 190; // i = (byte)(i + 190); System.out.println(i); // 44 (当然会自动损失精度了。)
布尔表达式 ? 表达式1 : 表达式2
布尔表达式的结果为true
时,表达式1
的执行结果作为整个表达式的结果。
布尔表达式的结果为false
时,表达式2
的执行结果作为整个表达式的结果。
好玩点:
char a = true ? '男' : "女"; string a1 = true ? '男' : "女"; 以上两个都报错。 //下面可以 String s = ""; s += true ? '男' : "女";
求和
字符串拼接
数字类型
的时候,求和。任意一边
”是字符串类型
,那么这个+会进行字符串拼接操作。int a = 100; int b = 200; // 这里的 + 两边都是数字,所以加法运算 int c = a + b; System.out.println(a + "+" + b + " = " + a + b);//100+200=100200 System.out.println(a + "+" + b + " = " + (a + b));//100+200=300
注:遵循“自左向右
”的顺序依次执行。(除非额外添加了小括号,小括号的优先级高)
推荐学习:《java详细教程》
Atas ialah kandungan terperinci Terangkan pengendali Java secara terperinci (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!