浪子荡秋千

基本运算

运算符

Java语言支持如下运算符:(优先级,()优先级较高)

  1. 算数运算符:+,-,*,/,%(取余,Java中叫做模),++,--

  2. 赋值运算符:=

  3. 关系运算符:>,<,>=,<=,==(Java中等于用两个等号表示),!=instanceof(不等于)

  4. 逻辑运算符:&&(与),||(或),!(非)

  5. 位运算符:&,|,^(异或),~(非),>>,<<,>>>(了解!!!)

  6. 条件运算符:?:

  7. 扩展赋值运算符:+=,-=,*=,/=

 

 

idea中快捷键Ctrl+D:复制当前行到下一行

运算中有一个类型为long或double,则结果也为相应类型,否则为int类型(不管运算中有没有int

自增自减运算符

++ 自增 -- 自减

例:

 int a = 3;
 int b = a++;
 int c = ++a;
 a,b,c输出结果为3,3,5

上面的代码相当于

 int a = 3;
 int b = a++;执行完这行代码后,先给b赋值,再自增
 //a++   a=a+1
 //a++   a=a+1  
 int c = ++a;执行完这行代码前,先自增,再给c赋值
 a,b,c输出结果为3,3,5

幂运算

2^3相当于 2 * 2 * 2 = 8,java中不允许这么写,很多运算,可以使用工具类来操作

输入Math.pow(2,3);

点击一下会自动变成

double pow = Math.pow(2,3);

逻辑运算

&&(与运算),全1出1,有0出0

||(或运算) ,有1出1,全0出0

!(非运算),有1出0,有0出1

短路运算

如果在与运算中,第一个数为false,那么此条代码根本不会去执行后面的操作,这样的现象叫短路

 int c = 5;
 boolean d = (c<4)&&(c++<4);
 输出c,d结果为5,fals,表明第2段不成立,没有运行,所以C++为5,如果运行了c++应为6

位运算符

&(与),|(或),^(异或,两个值相同为0,不同为1),~(非)

>>(右移,相当于/2),<<(左移,相当于*2)

 

位运算的效率极高

条件运算符

?: 三元运算符

x?y:z

 int score = 50;
 String type = score <60 ? "不及格" :"及格";//如果score小于60,那么输出不及格,否则输出及格
 System.out.println(type);

 

扩展赋值运算符

+=,-=,*=,/=

a+=b,相当于a=a+b

a-=b,相当于a=a-b

字符串连接符

只要+任意一侧有String类型,那么他会将另一个操作数改为String类型在进行连接

 int a = 10;
 int b = 20;
 System.out.println(""+a+b);
 //输出结果为1020

面试题

请问(""+a+b)与(a+b+"")有什么区别?

 int a = 10;
 int b = 20;
 System.out.println(""+a+b);
 System.out.println(a+b+"");字符串在后面,前面的会运算
 //输出结果为1020,30

 

posted on 2021-02-23 03:25  浪子荡秋千  阅读(97)  评论(0编辑  收藏  举报

导航