运算符

一、赋值运算符号

No.
赋值运算符号
描述
1
=
赋值
        int num=22;System.out.println("num= "+num);num=num-3;System.out.println("num= "+num);

结果:

num= 22

num= 19

二、一元运算符

No.
一元运算符
描述
1
+
正号
2
负号
3
!
NOT,否
        boolean flag=false;int x=10;        //定义一个正数int y=-30;        //定义一个负数System.out.println("x= "+x);System.out.println("y= "+y);System.out.println("flag= "+flag+"!b= "+!flag);

结果:

x= 10
y= -30
flag= false  !b= true

三、算术运算符

算术运行符和数学中的用法一样

No.
算术运算符
描述
1
+
加法
2
减法
3
*
乘法
4
/
除法
5
%
取模(取余数)
        int i = 10;int j = 3;System.out.println(i+"+"+j +"="+(i+j));   //加法System.out.println(i+"-"+j +"="+(i-j));   //减法System.out.println(i+"*"+j +"="+(i*j));   //乘法System.out.println(i+"/"+j +"="+(i/j));   //除法System.out.println(i+"%"+j +"="+(i%j));   //取模求余数

结果:

10+3=13
10-3=7
10*3=30
10/3=3
10%3=1

四、关系运算符

No.
关系运算符
描述
1
>
大于
2
<
小于
3
>=
大于等于
4
<=
小于等于
5
==
等于
6
!=
不等于

五、自增与自减运算符

No.
自增与自减运算符
描述
1
++
自增,变量值加1
2
--
自减,变量值减1
        int a=3,b=3;             //定义整型变量a,bint x=6,y=6;             //定义整型变量x,ySystem.out.println("a= "+a);         //输出变量a的值System.out.println("a++="+(a++)+"  a= "+a); //输入a++和a++之后a的值3,4System.out.println("b= "+b);System.out.println("++b="+(++b)+"  b="+b);   //值出++b,和++b之后b的值4,4System.out.println("x= "+x);System.out.println("x--="+(x--)+" x= "+x); //输出x--和x--之后x的值6,5System.out.println("y= "+y);System.out.println("--y="+(--y)+"   y="+y);  //输出--y和--y之后的值5,5

六、逻辑运算符

No.
逻辑运算符
描述
1
&
AND,与
2
&&
短路与
3
|
OR,或
4
||
短路或
 
AND及 OR结果表
No.
条件1
条件2
结果
&&(与)
||(或)
1
true
true
true
true
2
true
false
false
true
3
false
true
false
true
4
false
false
false
false
  • &&”与“&”
  • &&表示短路与
  • 对于“与”来说,要求所有的条件都判断,而如果使用“短路与”如果第一个条件为false,则后面的条件将不再判断
  • “||”与“|”
  • ||表示短路或
  • 对于“或”来说,要求所有的条件都判断,而如果使用“短路或”如果第一个条件为true,则后面的条件将不再判断。

七、括号运算符

No.
括号运算符
描述
1
()
提高括号中表达式的优先级

八、位运算符

No.
逻辑运算符
描述
1
&
按位与
2
|
按位或
3
^
异或(相同为0,不同为1)
4
~
取反
5
<<
左移位
6
>>
右移位
7
>>>
无符号右移位

位运算的结果表

No.
二进制数1
二进制数1
与操作(&
或操作(|
异或操作(^
1
0
0
0
0
0
2
0
1
0
1
1
3
1
0
0
1
1
4
1
1
1
1
0

九、运算符的优先级

优先级
运算符
结合性
1
()
括号运算符
由左至右
1
[]
方括号运算符
由左至右
2
!、+(正号)、-(负号)
一元运算符
由右至左
2
~
位逻辑运算符
由右至左
2
++、--
递增与递减运算符
由右至左
3
*、/、%
算术运算符
由左至右
4
+、-
算术运算符
由左至右
5
<<、>>
位左移、右移运算符
由左至右
6
>、>=、<、<=
关系运算符
由左至右
7
==、!=
关系运算符
由左至右
8
&(位运算符AND)
位逻辑运算符
由左至右
9
^(位运算符号XOR)
位逻辑运算符
由左至右
10
|(位运算符号OR)
位逻辑运算符
由左至右
11
&&
逻辑运算符
由左至右
12
||
逻辑运算符
由左至右
13
?:
三目运算符
由右至左
14
=
赋值运算符
由右至左

十、简洁表达式

No.
运算符
范例用法
说明
描述
1
+=
a += b
a + b的值存放到a中
a = a + b
2
-=
a -= b
a - b的值存放到a中
a = a - b
3
*=
a *= b
a * b的值存放到a中
a = a * b
4
/=
a /= b
a / b的值存放到a中
a = a / b
5
%=
a %= b
a % b的值存放到a中
a = a % b
简洁表达式的范例
No.
运算符
范例
执行前
说明
执行后
a
b
a
b
1
+=
a += b
12
3
a + b的值存放到a中(同a = a + b)
15
3
2
-=
a -= b
12
3
a - b的值存放到a中(同a = a – b)
9
3
3
*=
a *= b
12
3
a * b的值存放到a中(同a = a * b)
36
3
4
/=
a /= b
12
3
a / b的值存放到a中(同a = a / b)
4
3
5
%=
a %= b
12
3
 a % b 的值存放到a中(同a = a % b)
0
3
6
b++
a *= b++
12
3
a * b的值存放到a后,b加1(同a = a * b;b++)
36
4
7
++b
a *= ++b
12
3
  b加1后,再将a*b的值存放到a(同b++;a=a*b)
48
4
8
b--
a *= b--
12
3
a * b的值存放到a后,b减1(同a=a*b;b--)
36
2
9
--b
a *= --b
12
3
    b减1 后,再将a*b的值存放到a(同b--;a=a*b)
24
2

Java从零开始学六(运算符)相关推荐

  1. Java从零开始学三十六(JAVA IO- 字符流)

    一.字符流 BufferedReader:BufferedReader是从缓冲区之中读取内容,所有的输入的字节数据都将放在缓冲区之中 BufferedWriter:把一批数据写入到缓冲区,当缓冲区区的 ...

  2. Java从零开始学四十六(Junit)

    一.软件测试 软件开发: 项目调研--需求分析--软件设计--程序编码--软件测试--运行维护 软件测试:利用测试工具按照测试方案和流程对产品进行功能和性能测试,使用人工或者自动手段来运行或测试某个系 ...

  3. Java从零开始学四十五(Socket编程基础)

    一.网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可 ...

  4. Java从零开始学二十三(集合Map接口)

    一.Map接口 Collection.Set.List接口都属于单值的操作,即:每次只能操作一个对象,而Map与它们不同的是,每次操作的是一对对象,即二元偶对象,Map中的每个元素都使用key à v ...

  5. Java 从零开始学爬虫(gecco)

    废话: 第一次学习并尝试分析.爬取一个网站的数据,全部是从零开始的经验,希望对各位看官有帮助,当然,本次爬取的是一个比较简单的网页,没有任何反爬虫措施的网页. 网上查了一下Java爬数据,最原始的方式 ...

  6. Java从零开始学十四(包和访问控制)

    一.java中的包 Java文件的组织形式Windows中的文件功能类似 在开发比较大的项目时,不可能只涉及到一个java文件,可能要创建几十,甚至几百个java文件,这个时候,我们就可以使用包,把相 ...

  7. Java从零开始学三(public class和class)

    使用public class和class声明的区别 public class文件名称必须与类名称一致 class文件名称可以与类名称不一致 转载于:https://www.cnblogs.com/li ...

  8. JAVE EE 企业级开发之从零开始学JAVA【51CTO技术论坛】

    http://bbs.51cto.com JAVE EE 企业级开发之从零开始学JAVA         从零开始学JAVA?YES!本刊内容全部为午饭redking整理.撰写,所涉及内容均为原创,非 ...

  9. java的弱索引是什么_Java从零开始学 - 第76篇:什么是索引?

    原标题:Java从零开始学 - 第76篇:什么是索引? 关注 我们有助于升职加薪噢! 设为"星标",和你一起掌握更多数据库知识 这是Mysql系列第21篇. 本文开始连续3篇详解m ...

最新文章

  1. Bitcoin 地址原理(3)公钥地址到比特币地址
  2. python实现两数之和
  3. 【POJ】2387 Til the Cows Come Home
  4. C++模版和C#泛型求同存异录(一)sizeof(T)
  5. Django中模型类 属性-学习笔记
  6. mysql5.7 on windows
  7. STC学习:导航按键
  8. 华为ICT认证是什么意思?
  9. matlab中uigetfile的使用
  10. mysql姓氏笔画排序_php根据姓氏笔画排序怎么做
  11. 菜鸟保税仓成全球商家进中国首选 秒级通关领先全球
  12. 【Linux 0.11】第六章 引导启动程序
  13. python-docx 设置Table 边框样式、单元格边框样式
  14. 旅行照片剪辑--苏州同里篇
  15. 去IT培训机构学习适合哪些人去学习
  16. 每日微软面试题——day 1
  17. 天佑药品销售管理系统
  18. 深度学习深度前馈网络_深度学习前馈网络中的讲义第1部分
  19. C++——CString用法大全
  20. c语言RLC算法,百科1分钟了解RC、RL、RLC电路原理

热门文章

  1. 【科普】AI的分类与演进
  2. 亚马逊、谷歌和微软寸土必争的新战场
  3. 拥抱人工智能报告:中国未来就业的挑战与应对
  4. 漫话:如何给女朋友解释为什么 Java 中1000==1000为 false,而100==100为 true?
  5. 平均 15189 元!2021 年 3 月程序员工资统计出炉
  6. 为什么 Python 会成为程序员害怕的编程语言?
  7. 编程 25 年后,现实将我打回菜鸟程序员的起点
  8. 脉脉成为互联网大厂公敌
  9. C++本质:类的赋值运算符=的重载,以及深拷贝和浅拷贝
  10. 取存储过程output的取