网站首页 > 精选教程 正文
第1章 Java中的运算符
1.1 运算符的分类
? 算术运算符: + 、 - 、 * 、 / 、 % 、 ++ 、 --
? 赋值运算符: = 、 (+= 、 -= 、 *= 、 /= 、 %=)
? 比较(关系)运算符: > 、 < 、 >= 、 <= 、 == 、 !=
? 逻辑运算符: ! 、 & 、 | 、 ^ 、 && 、 ||
? 位运算符(了解): & 、 | 、 ^ 、 ~ 、 >> 、 << 、 >>>
? 三目运算符(三元运算符): 表达式 ? true : false;
1.1.1 什么是运算符
对常量和变量进行算术运算的符号
1.2 算术运算符
1.2.1 常见的算术运算符
最常见的:+ 、 - 、 * 、 / 、 %
示例:
/ : 除得的结果,只会留商,不要余数
% : 除得的结果,只要余数,如果除数比被除数小,所得到的余数就是除数本身。
整数相除,提到的结果是整数,如果要获取到小数,需要把结果转换成浮点型。
1.2.1.1 ++ -- 运算符的作用
在Java中,++叫做自增,--叫做自减。
它们的应用,有两种情况:
1. 单独使用,没有区别,都是自增或者自减
2. 如果参与运算,此时的自增或者自减就有区别,先看示例:
a = 5;
b = 7;
a = 6 7 7 7
运算:++a + a++ + ++b - b++ = 6 + 7 + 8 - 9 = 12
b = 7 7 8 9
1.2.1.2 练习
1. 示例1
++ 和 --特性之2:
如果参与到运算中,看++ 和 --所在的位置。如果在数据前面,表示先自增,然后再把结果给对方。
如果++ 和--在数据的后面,表示先把原有的数据给对方,自己再进行++或者--
a = b++; a = 10 b = 11
c = --a; a = 9 c = 9
b = ++a; a = 10 b = 10
a = c--; a = 9 c = 8
a = 9,b = 10,c = 8
示例2:
x = 5 6 6
int y = (x++)+(++x)+(x*10);
y = 4 + 6 + 60 = 70
示例3:
d++; 是没有问题的。
d = d + 1; 出问题了。d是byte类型,在计算的时候,会提升为int,计算的结果还是int类型,把int给byte,肯定会挂掉。
d++; --> d = d + 1;
为什么自增或自减不会报错??
这是因为,++和—它的特性之3,自带数据类型强制转换的技能(简称强转)。
1.3 赋值运算符
常见的赋值运算符:=
什么是赋值??
把 = 号右边的数据,给左边的变量,这人过程,就叫做赋值。
特殊的赋值运算符:
+= 、 -= 、 *= 、 /= 、 %=
示例:
a += ++b; --》 a = a + ++b;
在运算的时候,byte同样会变成int类型,为什么不报错???
特殊的赋值运算符,同样也有自带【强转】的技能。
除此之外,特殊的赋值运算符,执行过程是,先把运算符左边的变量对应的值拿出来,现右边的数据进行运算,所到的结果,再赋值给左边的变量。
a += ++b; --》 a = a + ++b; --> a = 10 + (10 + 1) --> a = 21
1.4 关系运算符
又称:比较运算符,条件运算符
==,!=,>,>=,<,<=
注意事项:
* 无论你的操作是简单还是复杂,结果是boolean类型。(true,flase)
操作:就是数据与数据的比较
* "=="不能写成"="。
主要使用关系运算符来做一些逻辑上的判断
示例:
(b > c) --> 在运算中,是可以使用括号来对计算的代码进行归类、优先计算的功能。
使用括号把某部分运算做了一组。
"=="不能写成"="
因为=号它的作用是赋值,不是做比较。
示例2:
示例3:
比较运算符,使用哪一个,根据实际的开发需求来应用。
猜你喜欢
- 2024-11-04 都这年头了不会还有人不知道「java」运算符吧?
- 2024-11-04 java基础-运算符例子 java中运算符
- 2024-11-04 第四讲《JAVA基础之运算符》,小妙招教你速记、速填坑
- 2024-11-04 Java教程之运算符 java | 运算符
- 2024-11-04 《Java编程思想》第五版:第四章 运算符
- 2024-11-04 道哥说编程----Java运算符中的算数运算符
- 2024-11-04 一起学JAVA 初识JAVA运算符 java ^运算符
- 2024-11-04 Java理论学习三分钟-运算符(上) java运算符总结
- 2024-11-04 Java位运算符:Java移位运算符、复合位赋值运算符及位逻辑运算符
- 2024-11-04 Java运算符之算术运算符和举例说明
你 发表评论:
欢迎- 04-11Java面试“字符串三兄弟”String、StringBuilder、StringBuffer
- 04-11Java中你知道几种从字符串中找指定的字符的数量
- 04-11探秘Java面试中问的最多的String、StringBuffer、StringBuilder
- 04-11Python字符串详解与示例(python字符串的常见操作)
- 04-11java正则-取出指定字符串之间的内容
- 04-11String s1 = new String("abc");这句话创建了几个字符串对象?
- 04-11java判断字符串中是否包含某个字符
- 04-11关于java开发中正确的发牌逻辑编写规范
- 最近发表
-
- Java面试“字符串三兄弟”String、StringBuilder、StringBuffer
- Java中你知道几种从字符串中找指定的字符的数量
- 探秘Java面试中问的最多的String、StringBuffer、StringBuilder
- Python字符串详解与示例(python字符串的常见操作)
- java正则-取出指定字符串之间的内容
- String s1 = new String("abc");这句话创建了几个字符串对象?
- java判断字符串中是否包含某个字符
- 关于java开发中正确的发牌逻辑编写规范
- windows、linux如何后台运行jar(并且显示进程名)
- 腾讯大佬私人收藏,GitHub上最受欢迎的100个JAVA库,值得学习
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)