在线客服
扫描二维码
下载博学谷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基础语法之运算符笔记,大家都看懂了吗?觉得学习起来比较费劲的同学,可以上博学谷官网,试听关于运算符的免费视频课程。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
JSP四大作用域及请求范围总结
程序员在写代码的时候,难免会遇到作用域的问题,今天我们要谈的也是JSP的四大作用域。本文主要总结了JSP四大作用域page、request、session和application和它们的请求范围。
10450
2019-08-19 17:23:19
Java入门基础之递归学习笔记
谈起递归,相信Java的程序员一定不陌生。递归算法是一种通过直接或者间接的方式,调用自身算法的过程。在Java开发中,递归算法可以解决许多问题,而且它往往使算法的描述更加简洁好理解。本文整理了Java入门基础中关于递归的有关知识点,内容包括了递归的介绍、递归的基本使用、递归的注意事项和递归求阶乘。
6146
2019-12-12 18:54:55
Redis新手安装教程
Redis作为目前应用最广泛的内存存储技术,其优势在于支持丰富的数据结构,提供多种语言的API,而且还支持数据持久化。总之,Redis有着丰富的应用场景,是当前最热门的NoSql数据库之一。比如当一个机器放不下数据量的总大小或是数据索引的时候,我们都需要使用NoSql。既然掌握Redis这么重要,下面我们来一起看看Redis新手安装教程吧!
6474
2020-03-26 16:29:05
Java学习如何提升学习效率?
Java学习如何提升学习效率?刚刚接触Java的同学估计有满脑子的困惑,Java的体系结构异常庞大,很多刚接触的朋友学着学着就不知道自己的路线是什么,不知道如何进行学习路线规划,也不知道学习什么内容可以找到相关的工作等。
5987
2020-06-17 14:58:23
初学者学Java看什么书?
书本中的知识比较系统能你有一个全面的认识,入门书籍选择十分重要。适合初学者看的书需要知识点全面系统,要深入浅出循序渐进触类旁通,让零基础的的学习也能看懂。
5151
2021-01-06 18:37:30
