哈哈没错,黄猿大大又来打卡了!
今天是上课的第三天,(此处掩饰第二天忘记打卡的事情,昨天就
上传的笔记哈哈!)真的是今天第三天,感觉真的很累,感觉20周
下来,比在大学四年学到的东西多。毕竟天天敲代码,老师教的挺
仔细的,适合零基础学习,就是我自己太容易犯困,整的我每次要
自觉的站起来,然后就进入一个死循环,站久了会累,累了就会犯
困,困了又站起来,站起来又累。。。累了就犯困。。。整吧,那
句话怎么说的越是 困难时越是修行时。
下面附上今天的笔记!
运算符和分支结构
1.运算符
1.1算数运算符
此处图片:
%表示取模运算,也叫取余运算
public class Test1{
public static void main(String [] args){
// 运算符 + - * / %
int a = 20;
int b = 2;
System.out.println("加法计算" + (a + b));
System.out.println("减法计算" + (a - b));
System.out.println("乘法计算" + (a * b)); // shift + 8
System.out.println("除法计算" + (a / b)); // 斜杠 带问号那个键
System.out.println("取模计算" + (a % b)); // 2 取10次 剩余 0
}
}
++代表自增1 --表示自减1
单独作为一条语句书写;在前在后没有任何区别
不是单独作为一条语句使用,书写在前 先自增 后做其他的操作(赋值,比较等)
不是单独作为一条语句使用,书写在后 先做其他的操作(赋值,比较)后自增
public class Test2{
public static void main(String [] args){
// 运算符 ++ --
int a = 20;
// a++; // 等价于 a = a + 1;
// System.out.println("第一次自增以后,a的值是" + a);
// ++a;
// System.out.println("第二次自增以后,a的值是" + a);
// ++ 单独作为一条语句书写 在前在后没有任何区别
int b = 10;
b = a++; // 书写在后 先赋值 再自增
System.out.println(b);
System.out.println(a);
int c = 21;
int d = 2;
d = ++c;
System.out.println(d);
System.out.println(c);
// 不是单独作为一条语句使用 书写在前 先自增 后做其他的操作(赋值,比较等)
// 不是单独作为一条语句使用 书写在后 先做其他的操作(赋值,比较等) 后自增
// -- 和 ++ 一样 单独作为一条语句使用 在前在后没有任何区别
// 不是单独作为一条语句使用 和++的规则是一样的
int a = 10;
int b = --a; // b = 9 a = 9
int c = a--; // c = 9 a = 8
System.out.println("a的值是" + a);
System.out.println("b的值是" + b);
System.out.println("c的值是" + c);
}
}
1.2赋值运算符
此处图片
public class Test4{
public static void main(String [] args){
// = += -= *= /= %=
int a = 20;
int b = 10;
System.out.println(a += b); // a = a + b;
System.out.println(a += 5); // 35
System.out.println(a -= 10); // 25
System.out.println(a *= 4); // 100
System.out.println(a /= 5); // 20
System.out.println(a %= 3); // 2
}
}
1.3关系运算符
此处图片
public class Test5{
public static void main(String [] args){
// 关系运算符 最终得到的都是布尔类型的值
// > < >= <= == !=
int a = 20;
int b = 10;
int c = 20;
int d = 30;
System.out.println(a > b);
System.out.println(a < b);
System.out.println(a >= c);
System.out.println(a <= d);
System.out.println(a == c); // 等于 判断是否相等
System.out.println(a != c); // 不等于
}
}
1.4逻辑运算符
此处图片
单个与 & 和 短路 与 && 结果没有任何区别 都要求两个或者多个表达式同时成立 则结果为 真 true
单个或 | 和 短路或 || 结果没有任何区别 都要求两个或者多个表达式有一个成立 则结果为 真 true
以上两者的区别在于执行过程
短路与如果第一个条件不成立 那么后续的条件将不再执行
短路或如果第一个条件不成立 那么后续的条件将不再执行
单个与 不管第一个条件是否成立 都执行所有的条件 没有短路的效果
单个或 不管第一个条件是否成立 都执行所有的条件 没有短路的效果
public class Test6{
public static void main(String [] args){
// 单个与 & 和 短路与 && 结果没有任何区别
// 单个或 | 和 短路或 || 结果没有任何区别
// 以上两者的区别在于执行过程
// 短路与如果第一个条件不成立 那么后续的条件将不再执行
// 短路或如果第一个条件成立 那么后续的条件将不再执行
// 单个与 不管第一个条件是否成立 都执行所有的条件 没有短路的效果
// 单个或 不管第一个条件是否成立 都执行所有的条件 没有短路的效果
// && 短路与 并且的意思 要求左右两边都成立 都为true 则整个表达式为true
int a = 20;
int b = 30;
int c = 25;
// 输出 打印 a< b && c > a
System.out.println("短路与比较");
System.out.println(a< b && c > a);
System.out.println(a< b && c < a);
System.out.println(a> b && c < a);
// 与 & 要求两个或者多个表达式都成立 结果为true
System.out.println("单个与比较");
System.out.println(a< b & c > a);
System.out.println(a< b & c < a);
System.out.println(a> b & c < a);
System.out.println("-------------------------------");
// || shift + 回车键附近 反斜杠按键
// 短路或 或者 要求两个或者多个表达式有一个为true 则整个表达式为true
System.out.println("短路或比较");
System.out.println(a< b || c < a);
System.out.println(a< b || c > a);
System.out.println(a> b || c > a);
System.out.println(a> b || c < a);
System.out.println("单个或比较");
System.out.println(a< b | c < a);
System.out.println(a< b | c > a);
System.out.println(a> b | c > a);
System.out.println(a> b | c < a);
System.out.println("-------------------------------");
// 或 | 要求两个或者多个表达式有一个成立 结果为true
}
}
public class Test7{
public static void main(String [] args){
// 通过比较我们发现 短路与 和 短路或 效率更高
// 短路与、或 和 单个与、或 没有哪个更好 我们通常使用短路与、或
// 除非有特殊情况 使用 单个 与、或
int x=8;
int y=9;
System.out.println("短路与比较");
System.out.println((x++==y)&&(++x!=y));
System.out.println("x的值是" + x);
System.out.println("y的值是" + y);
System.out.println("单个与比较");
System.out.println((x++==y)&(++x!=y));
System.out.println("x的值是" + x);
System.out.println("y的值是" + y);
int a=8;
int b=9;
System.out.println((a++==b)&&(++a!=b));
System.out.println("a的值是" + a);
System.out.println("b的值是" + b);
System.out.println("短路与比较");
int c=8;
int d=9;
System.out.println((++c==d)&&(c++!=d));
System.out.println("c的值是" + c);
System.out.println("d的值是" + d);
int e=8;
int f=9;
System.out.println("短路或比较");
System.out.println((++e==f)||(e++!=f));
System.out.println("e的值是" + e);
System.out.println("f的值是" + f);
int h=8;
int i=9;
System.out.println("短路或比较");
System.out.println((++h==i)|(h++!=i));
System.out.println("h的值是" + h);
System.out.println("i的值是" + i);
}
}
1.5三目运算符
此处有图片
public class Test8{
public static void main(String [] args){
// 三元 三目运算符
// 格式 表达式 ? 结果A : 结果B
int a = 20;
System.out.print(a > 20 ? "比20大" : "小于或者等于20");
}
}