JAVA -数据类型与表达式---表达式
表达式由一个以上的运算符和操作数按一定规则组合而成,通常用于完成计算。计算结果一般是一个数值,但也不一定总是数值。用于计算的操作数可能是数值常量、符号常量、变量或其他某种类型的数据。计算和使用表达式的方式,是程序设计的基础。下面重点讨论使用数值运算符并产生数值结果的算术表达式。
重点概念:表达式是运算符和操作数按一定规则构成的组合,用于完成计算。
算术运算符
算术运算符用于整型和浮点型数据的运算,包括加、减、乘、除。Java还提供了另一种算术算:求余运算(%)。求余运算返回第二个操作数除第一个操作数的余数。有时,求余运算符也称为模运算符。求余运算返回值的符号与被除数符号一致,如下表所示。

运算符优先级
运算符可以组合起来形成更复杂的表达式。例如,考虑下面的语句:
result= 14 +8/2
这条语句首先对赋值语句的整个右边表达式求值,然后将计算结果保存在 result变量中。result的值到底是多少?如果首先执行加法,则 result I中保存的值是11;如果首先执行除法运算,则 result的值为18。运算符求值顺序的不同导致了计算结果的不同。这里会首先执行除法运算,最终结果为18
重点概念:Java遵循一组定义良好的优先级规则,这组规则控制了表达式的求值顺序。
自增和自减运算符
还有两种算术运算符:自增运算符(艹+)和自减运算符(--)。自增运算符将整型和浮点型变量加1,两个加号构成该运算符,不可加入空格分离开。自减运算符与自增运算符类似,不同的只是将整型和浮点型变量减1。这两种运算符只需要一个操作数。下面的语句将 count变量的值增1
count++;
计算结果存回变量 count。因此,上述语句在功能上等价于下面的语句
count count +1:
自增运算符和自减运算符可以作用在变量之后(如 count+或 count--),称为后缀形式运算符也可以作用在变量之前(如++count或--count),称为前缀形式运算符。当独立使用在一条语句中时,前缀形式和后缀形式的功能是等价的,即下面两种语句的写法是没有差别的:
赋值运算符
为了方便性,Java定义了一组赋值运算符,对基本运算符和赋值运算符进行了组合。例如,下面这条使用“+=”运算符的语句:
total +=5
等价于语句:
total =total +5
JAVA -数据类型与表达式---表达式的更多相关文章
- [Java] 数据类型, 变量, 运算符, 表达式
title: [Java] 变量与表达式 你已经学会输出 Hello world 了, 那么现在, 我们来学习关于变量的知识 基本数据类型 在 Java 中, 有 8 种基本的数据类型: 名称 描述 ...
- Lambda 表达式,Java中应用Lambda 表达式
一.Lambda 表达式 简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. 链接:知乎 先举一个普通的 Python 例 ...
- Java代码三级跳——表达式、语句和代码块
Java代码三级跳—表达式.语句和代码块 表达式(expression):Java中最基本的一个运算.比如一个加法运算表达式.1+2是一个表达式,a+b也是. 语句(statement):类似于平时说 ...
- java 8 中lambda表达式学习
转自 http://blog.csdn.net/renfufei/article/details/24600507 http://www.jdon.com/idea/java/10-example-o ...
- Java 终于有 Lambda 表达式啦~Java 8 语言变化——Lambda 表达式和接口类更改【转载】
原文地址 en cn 下载 Demo Java™ 8 包含一些重要的新的语言功能,为您提供了构建程序的更简单方式.Lambda 表达式 为内联代码块定义一种新语法,其灵活性与匿名内部类一样,但样板文件 ...
- Java 8中Lambda表达式默认方法的模板方法模式,你够了解么?
为了以更简单的术语描述模板方法,考虑这个场景:假设在一个工作流系统中,为了完成任务,有4个任务必须以给定的执行顺序执行.在这4个任务中,不同工作流系统的实现可以根据自身情况自定义任务的执行内容. 模板 ...
- Java基础教程(8)--表达式、语句和块
一.表达式 表达式由变量和运算符组成.下面是一个简单的赋值表达式: a = 0; 表达式都具有运算结果,因为赋值表达式的运算结果是左侧操作数的值,因此上面的表达式将会返回一个0.可以使用简单的 ...
- Java数据类型和运算符
一,数据类型分类(2种) 1. 基本数据类型(3种) 数值型: 整数类型(4种): byte(1字节):范围(-128~127): short(2字节):范围(-32768~32767): int(4 ...
- Java数据类型在实际开发中的应用一
在前边的博文中,我已经介绍了Java核心的容器IO等,现在我来说一下java中的数据类型.在java中,一切东西皆为对象(这句话意思是java中绝大数情况都用对象),极少数不是对象的,也存在与之对应的 ...
- java知识点总结--java数据类型
java中的两大数据类型 1.基本数据类型:也称作内置类型,java语言本身提供的基本数据类型是其他类型(包括java核心类和用户自定义类)的基础 2.引用数据类型:java语言根据基本类型扩展数的其 ...
随机推荐
- php文件夹上传
php上传大文件配置 PHP用超级全局变量数组$_FILES来记录文件上传相关信息的. 1.file_uploads=on/off 是否允许通过http方式上传文件 2.max_execution_t ...
- Linux安装—IP设置
IP设置 务必不要把Linux的IP设置为和我们的真实机位于同一网段(这可能会跟其他机器造成冲突) 具体操作是:在安装虚拟机时Network Type设置选择:Use Host-Only networ ...
- ZOJ 2967计算几何+单调栈
ZOJ - 2967Colorful Rainbows 题目大意:给你道彩虹,每条彩虹有两个属性,a斜率和b截距,也就是彩虹描述为y=ax+b的直线,并且不存在垂直的彩虹以及一样的彩虹.然后就说明,如 ...
- vim8.1安装
win下直接就有gvim8.1.exe安装.但linux下直接从apt-get里面下载的vim都是远古版本,需要手动编译安装. 首先,下载vim源代码 git clone https://github ...
- Java线程之wait()、notify()、notifyAll()
翻译:https://www.journaldev.com/1037/java-thread-wait-notify-and-notifyall-example 简述 java中Objct对象包含三个 ...
- BZOJ1718分离的路径
边双题. 求的就是最少加几条边可以使一个图变成边双联通图. 首先tarjan求一下边双,缩完点变成一颗树,统计度数为1的点(无根树的叶子),把这个数算出来,设为x,则ans=(x+1)/2. 这个可以 ...
- Mybatis内置的日志工厂提供日志功能
Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging 具体选择哪个日志 ...
- Leetcode题目21.合并两个有序链表(简单)
题目描述: 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4输出:1->1-& ...
- org.apache.ibatis.binding.BindingException: Parameter 'xxx' not found.
1. 情景重现 1.1 Mapper 代码 public interface DeviceFileInfoVOMapper { List<QueryFileDTO> selectVideo ...
- Qt加载本地字体 .ttc或.ttf
版权声明:支持原创,转载请说明~ https://blog.csdn.net/luoyayun361/article/details/54934437 //设置本地字体,黑体简 int fontId ...