java day02运算符、流程控制、方法

1.运算符

1.1算数运算符

int a=10;
int b =3;
//3
System.out.println(a/b);
//1
System.out.println(a%b);
//注意小数相加
double a1 = 0.1;
double a2 = 0.2;
//0.3000000000000004
//一定要注释,千万不要判断小数是否相等
System.out.println(a1+a2);
//注意:优先级 单目>双目> 三目(三元)
//++:把值拿出来+1再放回去(会发生赋值)
//i++:先赋值再自身+1(先确定I的值)
//++i:先自身+1再赋值
int s = 100;
// s =s + s ++;
s = s + s++;
System.out.out.println(s);
//如果k++和++k单独出现,没有任何区别,自身+1完事
//k++:需要单独占用两块空间,一个是k空间,一个是临时空间用来保存+1之前的数据
//++k:需要占用1块空间,只需要保存+1之后的数据即可
//但是,基本可以忽略,因为编译器也会帮助我们进行优化
//在编译器优化之后,++i和i++在这里没有区别,而i++看起来更美观,所以会把单独出现的++i转换为i++
++k;
System.out.println(k);
//源码
int i =2;
i++;
++i;
i = ++i + 2;
i = i++ + 2;

编译之后class文件是这样
//int i=2;
//i++;
//因为是单独出现的,所以把i++也转换成了i++
//i++;
//因为是混合运算,所以++i就是++i,i++就是i++不会进行转换
//i = ++i + 2;
//i = i++ + 2;



1.2关系运算符
*关系运算符

  •  >   >=  < <=
    

*==:判断相等,基本类型比较值,引用类型比较地址 !=:判断不相等
*
*关系运算符的结果是布尔型 true/false
*

public static void main(String[]args){
int a = 10;
int b = 11;
boolean result = a < b;
//true
System.out.println(result);
//true
System.out.println(a<=b);
//false
System.out.println(a>b);
//false
System.out.println(a>=b);
//fasle
System.out.println(a==b);
//true
System.out.println(a!=b);
 }

1.3位

上一篇:力扣挑战Day02_2.两数相加


下一篇:今日内容总结day02