Java基础学习 day2-运算符

🚩关键词

  • 运算符
  • 运算符优先级
  • 流程控制

🔖笔记

运算符

        是一种特殊的符号,用以表示数据的运算。赋值和比较等

  1. 1算术运算符,加 减 乘 除 取余 前++,后++,前--,后--

                %(取余)结果的符号与被模数的符号相同

                前++(先加一,后运算

                后++(先运算,后加一

                自增一不会改变本身变量的数据类型

int a = 10;
int b = ++a;
System.out.println("a="+a+"b="+b);//11,11

int a1 = 10;
int b1 = a++;
System.out.println("a1="+a1+"b1="+b1);//11,10

short s = 10;
//s = s+1;//编译失败
s = (short)(s+1);//√
s++;//√

  1. 2赋值运算符

=,+=,-=,*=,/=,%=,不会改变变量本身的数据类型

当“=”两侧数据类型不一致时,可以使用自动类型转换或使用强制类型转换原则进行处理

支持连续赋值

//连续赋值
int i =i1 =1;
int j3 = 2,j4 = 3;


int n = 2;
n += 2;//n = n + 2

short s = 10;
//s = s + 2;//编译失败
s += 2;//不会改变变量本身的数据类型
  1. 3比较运算符

==  , !=,<,> ,<=,>= ,instanceof(检查是否是类的对象

结果都是Boolean型,

int j = 10;
int i = 20;

System.out.println(i == j);//false

System.out.println(i = j);//10
  1. 4 逻辑运算符

&(逻辑与),&&,(短路与),  |(逻辑或),||,(短路或), !(逻辑非),^(逻辑异或)

逻辑运算符操作都是布尔类型的变量

&与&&运算结果相同,当符号左边为true时,都执行符号右边的运算

当符号左边为false时,只有&继续执行符号右边的操作(优先使用&&

|与||运算结果相同,当符号左边为false时,都执行符号右边的运算

当符号左边为true时,只有|继续执行符号右边的操作(优先使用||

 

int x = 1,y = 1;\
if(x++==2&&==y == 2){
    x = 7;
}
System.out.println(x+","+y);

//x=2,y=1
  1. 5 位运算符

<<(左移),>>(右移),>>>(无符号右移),&(与运算),|(或运算),^(异或运算),~(取反运算)

位运算符操作的都是整型的数据

<<:在一定范围内,每向左移一位相当于*2,>>相当于/2

~6 = -7

int i = 21;

System.out.println("i << 2 :"+(i << 2));//84
System.out.println("i << 3 :"+(i << 3));//168--2的三次方


//交换两个变量的值
int n1 = 1;
int n2 = 2;

int temp = n1;//定义临时变量
n1 = n2;
n2 = temp;

n1 = n1+n2;
n2 = n1-n1;
n1 = n1-n2;
//位运算
n1 = n1^n2;
n2 = n1^n2;
n2 = n1^n2;
  1. 6  三元运算符

(条件表达式)?表达式1:表达式2

  1.         条件表达式的结果为boolean类型
  2.  根据表达式真或假,决定执行表达式1,还是2

                如果表达式为true,执行表达式1,如果表达式为false,则执行表达式2

     3.表达式1和表达式2要求是一致的

     4. 三元运算符可以嵌套使用

     5.凡是可以使用三元运算的,都可以使用if-else语句,反之不成立

int m = 12;
int n = 5;
int max = (m>n)?m:n;
System.out.println(max);

double num = (m>n)?2:10;

String maxStr = (m>n)?"m大":((m==n)?"m和n相等":"n大");

运算符的优先级

只有单目运算符,三元运算符,赋值运算符是从右向左运算的

()内的先运算

程序流程控制

三种基本流程结构:顺序结构,分支结构,循环结构


✨总结

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值