Java基础语法03-运算符
本文最后更新于 605 天前,其中的信息可能已经有所发展或是发生改变,请谨慎参考。

运算符

Java语言支持的运算符

算术运算符

符号

算术运算符符号:+ , – , * , / , ++ , —

package Operator;

public class Demo01 {
   public static void main(String[] args) {
       //算数运算符的基本操作
       int a = 10;
       int b = 20;
       int c = 30;
       int d = 40;
       System.out.println(a+b);
       System.out.println(a-b);
       System.out.println(a*b);
       System.out.println(a/(double)b);
       System.out.println(a%b);
  }
}
输出结果

小tips

  • 当参与运算的变量中有long型时,输出的结果也为long
  • 若参与运算的变量中无long型时,无论参与运算的变量是何类型,则输出结果均为int

eg:

package Operator;

public class Demo01 {
   public static void main(String[] args) {
       //算数运算符的基本操作
       long a = 10;
       int b = 20;
       byte c = 30;
       short d = 40;
       System.out.println((String) (a+b));
       System.out.println((String) (b+c));
       System.out.println((String) (c+d));
       System.out.println((String) (b+d));
       

  }
}
test

** 自增(++)、自减(–)运算符**

package Operator;

public class Demo03 {
   public static void main(String[] args) {
       //++ -- 自增 自减 一元运算符
       int a = 1;
       int b = a++;                //执行这行代码时,先进行赋值操作把a的初始值1赋值给b;然后a再执行自增操作a = a+1 = 2。
       System.out.println(a);
       int c = ++a;                //执行这行代码时,先进行a = 2自增操作a = a+1 =3;然后再执行赋值操作把a值3赋值给c。
       System.out.println(a);
       System.out.println(b);
       System.out.println(c);
  }
}
自增自减

赋值运算符

符号

赋值运算符符号:=

语法格式

//语法格式如下
int a = 10;  //初始化int类型变量a,并将10赋值给a。

关系运算符

符号

:关系运算符符号:> , < , >= , <= , == , != , instanceof

  • 关系运算符返回的是 布尔值,其结果只有true和false两种情况,常用于if语句中

语法格式

package Operator;

public class Demo02 {
   public static void main(String[] args) {
       //关系运算符返回的是 布尔值,其结果只有true和false两种情况,常用于if语句中
       int a = 10 ;
       int b = 20 ;
       System.out.println(a == b);
       System.out.println(a != b);
       System.out.println(a < b);
       System.out.println(a > b);

  }
}
result

逻辑运算符

符号

逻辑运算符符号:&& , || , !

语法格式

package Operator;

public class Demo04 {
   public static void main(String[] args) {
       boolean a = true;
       boolean b = false;
       System.out.println("a&&b:\t"+(a && b));             //逻辑与运算:只要有一个是假的,则结果就是假的
       System.out.println("a||b:\t"+(a || b));             //逻辑或运算:只要有一个是真的,则结果就是真的
       System.out.println("!(a&&b):\t"+!(a && b));         //逻辑非运算:结果取反
       //短路运算:当与运算中第一个变量为假时,就不会再去判断第二个变量。
       int c = 5;
       boolean d = b && (c++ > 5);
       System.out.println(d);
       System.out.println(c);
  }
}
result01

位运算符

符号

位运算符符号:& , | , ^ , ~ , >> , << , >>>

语法格式

语法格式如下

package Operator;

public class Demo05 {
   public static void main(String[] args) {
       /*
       A = 0010 1101
       B = 1011 1001
       -------------------
       A&B =   0010 1001
       A|B =   1011 1101
       A^B =   1001 0100   异或运算:变量真假相同时结果为假,不同时为真
       ~B =   0100 0110
       */
       //快速计算2*8
       System.out.println(2<<3);
  }
}

条件运算符

符号

条件运算符符号:x ? y : z :

语法格式

语法格式如下:

package Operator;

public class Demo05 {
   public static void main(String[] args) {
       int a = 10;
       int b = 20;
       // 条件运算符 x ? y : z
       // 先判断x是否为真,若x为真,则结果是y;若x为假,则结果是z
       System.out.println((a>b) ? 50 : 60);
       System.out.println((a<b) ? 50 : 60);
  }

}

扩展赋值运算符

符号

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

语法格式

语法格式如下

package Operator;

public class Demo05 {
   public static void main(String[] args) {
       int a = 10;
       int b = 20;
       a+=b;
       System.out.println(a); // a = a+b -->30 = 10+20
       a-=b;
       System.out.println(a); // a = a-b -->10 = 30-20

       //字符串连接符 +
       //当+号两侧的任意一侧出现了String类型,则它会自动将两侧的变量都转换为String类型并进行连接。
       System.out.println("" + a + b);
       //但是如果String类型前面出现了运算,则会先运算再连接。
       System.out.println(b+ a + "" );
  }

}
result02

运算符优先级

优先级运算符简介结合性
1[ ].( )方法调用,属性获取从左向右
2!、~、 ++、 —一元运算符从右向左
3* 、/ 、%乘、除、取模(余数)从左向右
4+ 、 –加减法从左向右
5<<、 >>、 >>>左位移、右位移、无符号右移从左向右
6< 、<= 、>、 >=、 instanceof小于、小于等于、大于、大于等于, 对象类型判断是否属于同类型从左向右
7== 、!=2个值是否相等,2个值是否不等于。 下面有详细的解释从左向右
8&按位与从左向右
9^按位异或从左向右
10|按位或从左向右
11&&短路与从左向右
12||短路或从左向右
13?:条件运算符从右向左
14=、 += 、-= 、*= 、/=、 %=、 &=、 |=、 ^=、 <、<= 、>、>= 、>>=混合赋值运算符从右向左

点击查看Java基础语法01-注释、标识符、数据类型

点击查看Java基础语法02-类型转换、变量

您当前正在 - https://icu007.work/archives/59 .页面,阅读由“Rookie_L” 撰写的《Java基础语法03-运算符》
非常感谢您对我们的网站感兴趣并访问。在您使用本网站之前,请您仔细阅读本声明的所有条款。

版权声明:
1、本博客属个人所有,不涉及商业目的;
2、本博客内容均为本人编写,图片版权属于原作者,图片仅供大家欣赏和分享,切勿做为商业目的使用。如果侵害了您的合法权益,请您及时与我联系,我会在第一时间删除相关内容;
3、本博客所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。非经允许,不得用于盈利目的;
4、本博客受中国知识产权、互联网法规和知识共享条例保护和保障,任何人不得进行旨在破坏或牟取私利的行为;
5、做新时代合格网民,弘扬互联网精神:开放、平等、 协作 、分享;共同构建文明、清朗的网络环境;
6、本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准;
7、当您阅读到这里的时候,即表明已阅读并接受了上述各项条款。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇