-
学习日期: 11月 7 日
-
知识导图:
-
学习内容:
运算符介绍:
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。分有:1.算术运算符,2.赋值运算符,3.关系运算符,4.逻辑运算符,5.位运算符[需要二进制基础],6.三元运算符。
算术运算符:
其中%是取模取余数就是相比较/是要的是下边那个余数。/要的是上边那个除数。哈哈
%的本质是:a % b = a- a/b *b;
i++和++i;
如果是独立使用的话,i++ 和++ i 是一样的等于 i= i+1;
作为表达式使用:++i是自增后赋值。i++ 是先赋值后自增。
int i = 8;
int k = ++i; // 这里是 i = i+1,k=i;
System.out.print(i+"和"+k); // 9 和 9;
int k = i++;//这里是 k = i; i = i + 1;
System.out.print(i+"和"+k); // 9 和 8;
关系运算符(比较运算符)
1.关系运算符的结果是boolean型,要么是true要么是false
2.关系表达式经常用在if条件循环中。
逻辑运算符:
用于连接多个条件,多个关系表达式,最终的结果也是一个boolean值。
逻辑规则
短路或与逻辑或的区别:短路效率高。
赋值运算符:不过多介绍
三元运算符:语法: 表达式条件?表达式1(true):表达式2(false);口诀:一灯(真)大师。哈
细节:1.表达式1和表达式2要为可以赋给接受变量的类型(或者可以自动转换)
2.int res = a> b? a++: --b;
运算符的优先级:
键盘输入:
三步骤:
1.导入Java.util.Scanner;
2.new 一个自己的scanner对象
3.接受键盘输入,String是next(),int是nextInt(),char是next().charAt(0);
例子:
进制转换:
二进制b,十进制,八进制0开头,十六进制ox开头。
重点(背背背)
位运算符:
-
题目练习:
在我联系这个代码的时候,我陷入了陷阱:
System.out.println(10/4.0);//对于这个除法我刚开始以为会输出2.5,但是最后的输出确实2.
//原因是我们的10是整数,在被除的时候最后保留跟10一样的int类型
//我们将10写成10.0的double型就成了2.5.
//在运算中有一个要是高精度的。哈哈
}
答:首先i=1,在i前= i后=1(先赋值了1) ,然后i后(临时空间是2,但是i不是2)= i后+1;也新赋值的那个i就是 i=2;最后返回i是1.i(后)是一个临时空间。
答:首先i = 1,执行i后= i后 +1, i前 = i后 = 2(先加1,后临时空间i赋值了2),返回2
答:i = i1 =10,i1 = i1 +1 = 11,i2 = 20。
i = i2 -1 = 19,i2 = 19;
问题:还有59天放寒假,剩余多少个星期,多少天?
int day = 59;
System.out.println("还剩下"+day/7+"星期,和"+day%7+"天");
注意:这里面有 5/9了,我们应该写成 5.0 /9 .
逻辑运算符练习题:
问题:使用三元运算符实现三个数最大那个
答;
int a = 1;
int b = 2;
int c = 3;
int max1 = a> b ? a: b;//先判断两个数的大小,大的返回给max1
int max2 = max1>c ? max1 :c;//再用max1有c比较大的返回给max2;
System.out.println(max2);