循环了
昨天的知识点
{
Scanner input = new Scanner(System.in);
int[] num = new int[5];
int max = 0;
System.out.println("请输入5个整数:");
for (int i = 0; i < 5; i++) {
num[i] = input.nextInt();
}
max = num[0];
for (int i = 0; i < 5; i++) {
if (num[i] > max)
max = num[i];
}
System.out.println("五个数字之中的最大值为" + max);
}
逻辑运算符
与 & 或| 非,取反!
1、只要出现逻辑运算符,比较运算符逻辑运算符两边的,操作数就会变成boolean类型,结果也是boolean。
比如 大小于号
boolean a= true & false
2、 ! 取反
3、 如果有三个逻辑运算符,那么先算前面两个,后算后面两个。 加括号可以优先运算
& 字符两边可以出现两个数字 (10&2) 10变成二进制 2变成2进制 两个二进制相互对比
00001010
00000010
00000010 =2
10和 2& &完了是2
| 或也可以
00001010
还是10
4、两个与 && 短路,只要第一个错就短路
两个||只要第一个为true 就短路
5、三元运算符
(10>2?10:2)
10>2?10-2:2
结果为真 取第一个值,结果
加减法
字符串也行,字符串要用String
String b=10>2?“第一个值大”:"第二个值大”
“:”两边数据结构要相同
非要不一样,那就直接打印
System.out.println(10<2?“第一个值大”:2);
取最值(取最大值,和最小值)
int op1=23,op2=90;
int max = op1>op2?op1:op2
三个数的最大值
int a =1,b=2,c=3,d=4;
int max=a>b?a:b;
int max2=max>c?max:c;
int max3=max2>d?max2:d
6、int * long 不能直接相乘
在算数运算的时 小数据会直接转换为大数据(自动转换)
7、ctrl 能点进去 Math.PI
8、Matn.pow(r*2)
9、> 引用文本
这个是数组https://blog.csdn.net/wasane/article/details/115449202
取余什么意思
== int a = 123;==
int b = a % 10;//相当于123/10 商是12,余数是3
分支结构
1、if分支
if( 这里面是boolean值){
if分支代码体,代码片段
}
1.1、单独执行if ,当条件表达式结果为true是,执行if分支,否则不执行分支
if else 一定会执行一个分支
如果。。就。。
就用if
1.2、ALT加回车
Scanner 如果没导入的话,在空白的地方就行
1.3、Scanner
String 是 sc.next
int 是 sc.nextInt
1.4、
如果
if else if 多个,程序可能一个都不满足,代码往下运行
区间判断用 if else if
但是if else 那一定会选一个
只会执行其中一个分支,不管有多少个分支,直接跳出分支
boolean 值本来就是 1和0 了,所以不能 a=true
常用于区间判断
2、switch 分支
常用于做等值判断
default
switch 已经内涵了等值判断
不用写case ==1
直接写case 1
要写break 来终止分支
不写break 会case穿透
这个可以利用,比如case 1 case 2 case 3 都是一个结果
魔法值 是这个https://blog.csdn.net/m0_54121964/article/details/112404358
switch (这里可以用 int 不能是浮点值,只能用来做< > 大于 小于 判断 把鼠标放上去就能看到)
idea debug 功能
左边点红点
F8 是下一步