java运算符及优先级

这篇博客详细介绍了Java中的算术、赋值、关系、逻辑、位和条件运算符的用法,以及自增自减、三元运算符的概念。还涉及到运算符的优先级和类型转换规则,并通过实例展示了运算过程。此外,提到了Math类在数学运算中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//算术运算符:+.-.*./.%.++.--
//赋值运算符:=
//关系运算符:>.<.>=.<=.==.!=.instancef
//逻辑运算符:&&.||.!
//位运算符:&,|.^.~.>>.<<.>>>(了解!!!)
//条件运算: ?.:
//扩展赋值运算符:+=.-=.*=./=

public class Demo1 {
    public static void main(String[] args) {
        //二元运算符
        //ctrl+d:复制当前行到下一行
        int a =10;
        int b =20;
        int c =25;
        int d =25;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);//0.5
        System.out.println(a/b);
long a =123123123123123l;
int b =123;
short c =10;
byte d =8;
System.out.println(a+b+c+d);//long 如果运算中包括long类型运算最后一定是long类型  如果运算中包括double类型运算最后一定是double类型
System.out.println(b+c+d);//int  如果运算中没有long或double类型,无论运算中是否有int类型,最后一定是int类型。
System.out.println(c+d);//int   如果运算中没有long或double类型,无论运算中是否有int类型,最后一定是int类型。 cast转换的意思
//关系运算符的返回结果:正确 或错误  布尔值
int a =10;
int b =20;
int c =21;
System.out.println(c%a);//c/a  21/10=2...1
//取余,也叫模运算
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
// ++ -- 自增 自减 一元运算符
int a =3;
int b =a++;//执行完这行代码后,先给b赋值,再自增。
// a++ a=a+1;
System.out.println(a);
// ++a a=a+1;
int c =++a;//执行完这行代码前,先自增,再给b赋值。
System.out.println(a);
System.out.println(a);
System.out.println(b);
System.out.println(b);
System.out.println(c);
System.out.println(c);
//幂运算 2^3 2*2*2=8 //很多运算,我们会使用一些工具类来操作! Math 数学工具类
double pow = Math.pow(2, 3);
System.out.println(pow);
//逻辑运算符
public class Dem05 {
    public static void main(String[] args) {
       // && 与    ||或  !非
        boolean a =true;
        boolean b =false;
        System.out.println("a&&b:"+(a&&b));//逻辑与运算:两个变量,两个都为真则为真
        System.out.println("a||b:"+(a||b));//逻辑与运算:两个变量一个为真,则结果为真
        System.out.println("!(a&&b):"+!(a&&b));//逻辑与运算:如果为真,则变为假,如果是假,则变为真。
        //短路运算:
         int c =5;
         boolean d =c<4&&(c++<4);
        System.out.println(d);
        System.out.println(c);
/*
A = 0011 1100
B = 0000 1101
-------------------------------------------------
A&B = 00001100  零零得零 零一得零 一一得一
A|B = 00111101  零零得零 零一得一 一一得一
A^B//亦或 = 00110001 如果上下两个数字相同为零不同为一。
~B//非A及B =1111 0010 与B相反
2*8 = 16 2*2*2*2
<< 左移*2  >>右移/2
0000 0000    0
0000 0001    1
0000 0010    2
0000 0011    3
0000 0100    4
0000 1000    8
0001 0000    16
 */
int a =10;
int b =20;
a+=b;// a= a+b
a-=b;// a= a-b
System.out.println(a);
//字符串连接符 + ("":这是一个字符串类型String)
// 注意:+号左右只要有一个字符串类型 他就会把左右的都转化为字符串类型连接起来
System.out.println(a+b);
System.out.println(""+a+b);//没计算直接连接 在后
System.out.println(a+b+"");//先计算在连接 在前
//三元运算符
public class Demo8 {
    public static void main(String[] args) {
        //x ? y : z
        //如果x==true,则结果为y,否则结果为z
        int score = 80;
        String type = score <60 ? "不及格":"及格";//必须掌握
        System.out.println(type);
        //优先级()

数字越小优先级越高 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值