java.学习笔记day05(运算符)

java语言支持如下运算符:

建议多使用()

算术运算符:

//二元运算符
1. 加:+
2. 减:-
3. 乘:*
4. 除:/
5. (取余)模:% 例如:
    int a = 5;
    int b = 2;
    int c = a%b;//c = 1,因为5/2=2余1
//一元运算符
6. 自增:++
7. 自减:--

赋值运算符:

1. = 例如:int a =10;(把10赋给a)

关系运算符:

1.  大于>
2.  小于<
3.  小于等于<=
4.  大于大于>=
5.  等于==
6.  不等于!=
7.  instanceof 

逻辑运算符:

1. 与:&&(and)
2. 或:||(or)
3. 非:!(取反)

位运算符:(与计算机操作有关,二进制)

1. 与:&
2. 或:|
3. 亦或:^
4. 非:~
5. 右移:>>
6. 左移:<<
7. >>>

条件运算符:(更便捷)

1. ?
2. :

扩展赋值运算符:(更便捷)

1. +=
2. -+
3. *=
4. /=

代码实例

小知识点:ctrl + D :复制当前行到下一行

算术运算符

public static void main( string[]args) {
//二元运算符
//ctrl +D:复制当前行到下一行
    int a = 10;
    int b = 20;
    int c = 25;
    int d = 25;
    int e =21;
    
    system.out.println(e%a);//(取余)输出1,原理:21/10=2....1
    system.out.println(a+b);//(加)输出30
    System.out.println(a-b);//(减)输出-10
    system.out.println(a*b);//(乘)输出200
    system.out.print1n(a/(double)b);//(除)输出0.5
    
    long a = 123123123123123L;
    int b = 123;
    short c = 10;
    byte d = 8;
    System.out.println(a+b+c+d); //Long类型
    System.out.println(b+c+d); //int类型
    System.out.println(c+d);l//int类型
/*cast 转换;如果运算中有Long类型那么结果为Long类型,如果运算中有double类型那么结果为double类型,如果没有Long和double类型,那么都为int类型,无论是否含有int类型*/
    
}
​
public static void main(string[]args) {
//++自增    --自减 一元运算符
    int a = 3;
    int b = a++;//执行完这行代码后,先给b赋值,再自增
    int c = ++a; //执行完这行代码前,先自增,再给b赋值
    System.out. print1n(a);//输出3
    System.out.println(b);//输出3
    System.out.println(c);//输出5
    
    //幂运算 2^3 = 2*2*2 = 8。需要使用Math类
    //很多运算,我们需要使用工具类来操作
    double pow = Math.pow(2,3);
    System.out.println(pow);//输出8.0
}

关系运算符

public class Demoe3 {
public static void main(String[]args) {
//关系运算符返回的结果:正确true,错误false 是布尔值
//跟if经常使用
    int a = 10;
    int b = 20;
  
    system.out.println(a>b);//输出false
    system.out.println(a<b);//输出true
    system.out.print1n(a==b);//输出false
    System.out.println(a!=b);//输出true
    }
}
​

逻辑运算符

public static void main(String[]args) {
//&&与(and)  ||或(or)  !非(取反)
boolean a = true;
boolean b = false;
​
    System.out.print1n("a&&b:" +( a&&b));//输出a&&b:false(逻辑与运算:两个变量都为真,结果才为true)
    System.out.print1n("a||b:" +(a||b));//输出a||b:true(逻辑或运算:两个变量有一个为真,则结果才为true)
    System.out.print1n("!(a&&b):" + !(a&&b));//输出!(a&&b):true(如果是真,则变为假,如果是假则变为真)
    
    
    //短路运算
    int c = 5;
    boolean d = (c<4)&&(c++<4);
    System.out.println(d);//输出false
    System.out.println(c);//输出5,因为在(c<4)判断时,判断为假,所以直接结束该代码的执行,不做执行(c++<4)因此c依旧是5
​
}

位运算

public static void main(String[]args) {
/*
A = 0011 1100
B = 0000 1101
​
A&B = 0000 1100 上面和下面一一比较如果都为1则为1,否则都为0
A/B = 0011 1101 上面和下面一一比较如果都为0则为0,否则有一个1都为1
A^B = 0011 0001 上面和下面一一比较如果相同为0,不相同为1
~B  = 1111 0010  如果为0则为1,反之为0
​
面试题:2*8怎么做才快 2*8=16
需要用到左移<<,右移>>
*/
    System.out.println(2<<3);//输出16,代表2的1向左移动3位
/*
左移<<  *2
右移>>  /2
​
2<<3 = 2 *2 *2 *2 = 16//就是2后面再*3个2
​
二进制--- 数值
0000 0000---0
​
0000 0001---1
​
0000 0010---2
​
0000 0011---3
​
0000 0100---4
​
0000 1000---8
​
0001 0000---16
​
*/
}
​

三元运算符和扩展赋值运算符

扩展赋值运算符

public class Demo07 {
public static void main(String[] args) {
    //扩展赋值运算符
    int a = 10;
    int b = 20;
    a+=b; //a = a+b
    a-=b; //a = a-b
system.out.println(a);//输出:30
    
    //拓展 
    //字符串连接符+, string
    System.out.println(""+a+b);//输出1020,因为string在运算前面,所以导致后面运算也变成了字符串连接
    System.out.print1n(a+b+"");//输出30,因为string在运算后面,所以依旧先运算后加字符串
​
}
​

三元运算符

//三元运算符
public class Demoe8 {
public static void main(String[] args) {
//x ? y : z
//如果x==true,则结果为y,否则结果为z
    int score = 50;
    String type = score < 60 ? "不及格" : "及格";
        //后期与if关系很大
    System.out.println(type);//输出不及格
}
  • 29
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值