在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
一般来讲,Java程序的基本组成要素有两个,一个是表达式,另一个就是运算符。运算符作为Java基础语法的一个重要知识点,是学习的根基。本文为大家整理了十分全面的运算符学习笔记,学过这部分基础知识的同学,可以复习梳理一遍。没学过的同学可以结合博学谷Java就业班的试学视频一起学习,相信知识点的思路会更加清晰。

1、算术运算符
(1)运算符和表达式
运算符:对常量或者变量进行操作的符号。表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。不同运算符连接的表达式体现的是不同类型的表达式。
举例说明:
```java
int a = 10;
int b = 20;
int c = a + b;
```
+:是运算符,并且是算术运算符。
a + b:是表达式,由于+是算术运算符,所以这个表达式叫算术表达式。
(2)算术运算符
+ 、 - 、 * 、 / 分别对应的是加减乘除,需要记住的是 % 的作用是取余,即获取的是两个数据做除法的余数。
注意:/和%的区别:两个数据做除法,/取结果的商,%取结果的余数。整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。
~~~java
int a = 10;
int b = 3;
System.out.println(a / b); // 输出结果3
System.out.println(a % b); // 输出结果1
~~~
(3)字符的“+”操作
char类型参与算术运算,使用的是计算机底层对应的十进制数值。需要我们记住三个字符对应的数值:
'a' -- 97 a-z是连续的,所以'b'对应的数值是98,'c'是99,依次递加
'A' -- 65 A-Z是连续的,所以'B'对应的数值是66,'C'是67,依次递加
'0' -- 48 0-9是连续的,所以'1'对应的数值是49,'2'是50,依次递加
~~~java
// 可以通过使用字符与整数做算术运算,得出字符对应的数值是多少
char ch1 = 'a';
System.out.println(ch1 + 1); // 输出98,97 + 1 = 98
char ch2 = 'A';
System.out.println(ch2 + 1); // 输出66,65 + 1 = 66
char ch3 = '0';
System.out.println(ch3 + 1); // 输出49,48 + 1 = 49
~~~
算术表达式中包含不同的基本数据类型的值的时候,整个算术表达式的类型会自动进行提升。
提升规则:
byte类型,short类型和char类型将被提升到int类型,不管是否有其他类型参与运算。整个表达式的类型自动提升到与表达式中最高等级的操作数相同的类型。 等级顺序:byte,short,char --> int --> long --> float --> double
例如:
~~~java
byte b1 = 10;
byte b2 = 20;
// byte b3 = b1 + b2; // 该行报错,因为byte类型参与算术运算会自动提示为int,int赋值给byte可能损失精度
int i3 = b1 + b2; // 应该使用int接收
byte b3 = (byte) (b1 + b2); // 或者将结果强制转换为byte类型
-------------------------------
int num1 = 10;
double num2 = 20.0;
double num3 = num1 + num2; // 使用double接收,因为num1会自动提升为double类型
~~~
注意:正是由于上述原因,所以在程序开发中我们很少使用byte或者short类型定义整数。也很少会使用char类型定义字符,而使用字符串类型,更不会使用char类型做算术运算。
(4)字符串的“+”操作
当“+”操作中出现字符串时,这个”+”是字符串连接符,而不是算术运算。
~~~java
System.out.println("itheima"+ 666); // 输出:itheima666
~~~
在”+”操作中,如果出现了字符串,就是连接运算符,否则就是算术运算。当连续进行“+”操作时,从左到右逐个执行。
~~~java
System.out.println(1 + 99 + "年黑马"); // 输出:100年黑马
System.out.println(1 + 2 + "itheima" + 3 + 4); // 输出:3itheima34
// 可以使用小括号改变运算的优先级
System.out.println(1 + 2 + "itheima" + (3 + 4)); // 输出:3itheima7
~~~
2、赋值运算符

赋值运算符的作用是将一个表达式的值赋给左边,左边必须是可修改的,不能是常量。
注意:扩展的赋值运算符隐含了强制类型转换。
~~~java
short s = 10;
s = s + 10; // 此行代码报出,因为运算中s提升为int类型,运算结果int赋值给short可能损失精度
s += 10; // 此行代码没有问题,隐含了强制类型转换,相当于 s = (short) (s + 10);
~~~
3、自增自减运算符

注意事项:++和-- 既可以放在变量的后边,也可以放在变量的前边;单独使用的时候, ++和-- 无论是放在变量的前边还是后边,结果是一样的;参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做++或者--;参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作。最常见的用法:单独使用。
以上就是Java基础语法之运算符笔记,大家都看懂了吗?觉得学习起来比较费劲的同学,可以上博学谷官网,试听关于运算符的免费视频课程。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java基础 字节流与字符流的区别是什么?
要把一片二进制数据数据逐一输出到某个设备中,或者从某个设 备中逐一读取一片二进制数据,不管输入输出设备是什么,我们 要用统一的方式来完成这些操作,用一种抽象的方式进行描述, 这个抽象描述方式起名为 IO 流,对应的抽象类为 OutputStream 和 InputStream ,不同的实现类就代表不同的输入和输出设备, 它们都是针对字节进行操作的。
10593
2019-06-03 11:19:03
认识Dubbo基础学习笔记
今天我们要一起复习的内容是Dubbo的基础部分,包括了Dubbo的概念、认识RPC、Dubbo架构以及服务注册中心Zookeeper,如果大家想好好认识一下Dubbo,就赶紧看看下面有关Dubbo基础的学习笔记吧~
6376
2020-05-11 10:37:02
学Java编程开发难吗?
学Java编程开发难吗?刚刚接触Java编程的人,都会被告知Java相对于其他编程语言来说更加难学,对于没有基础的同学入行学习压力非常大。那Java编程开发真的难学吗?想要学习Java的小伙伴们看过来,只要掌握科学的学习方法,Java学习其实并没有想象中可怕。
5931
2020-07-17 17:28:07
在Java培训班听不懂怎么办?怎么学?
不少人在学习Java的时候反馈听不懂学不会,其中有些人是零基础转行或是了解一些基础知识,刚开始听不懂很正常不要太过焦虑,掌握一些学习的方法。学不懂很正常,毕竟零基础更主要的是理解基础意思然后敲代码,先从简单的代码开始,慢慢加深,一点一滴的积累。
6044
2021-02-20 15:23:51
微服务和分布式的联系与区别什么?
微服务和分布式的联系与区别什么?分布式只是一种手段把不同的机器分散在不同的地方,然后这些机器间相互协助完成业务,而微服务是一种特殊的分布式。分布式将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互,微服务与分布式的细微差别是微服务的应用不一定是分散在多个服务器上也可以是同一个服务器。
6989
2021-03-26 11:29:43
