运 算 符 和 表 达式
运 算 符 指 明 对 操 作 数 所 进 行 的 运 算 。 按 操 作 数 的 数 目来分 ,可 以 有 一元 运 算 符 (如 ++、--),二 元 运 算 符 (如 +、 >)和 三元 运 算 符 (如?:),它 们 分 别 对 应 于一 个 、 两 个 和 三 个 操 作 数。 对 于 一 元 运 算 符 来 说 ,可 以 有 前缀 表 达 式 (如 ++i )和 后 缀表 达 式 (如 i++),对 于 二 元 运 算 符 来 说 则 采 用 中 缀 表 达 式 (如 a+b)。 按 照运 算 符 功 能 来 分 ,基 本 的 运 算 符 有 下 面 几 类 :
1.算 术 运 算 符 (+,-,*,/,%,++,--)
2.关 系 运 算 符 (>,<,>=,<=,==,!=)
3.布 尔 逻 辑 运 算 符 (!,&&,||)
4.位 运 算 符 (>>,<<,>>>,&,|,^,~ )
5.赋 值 运 算 符 (=,及 其 扩 展 赋 值 运 算 符 如 +=)
6.条 件 运 算 符 ( ?:)
7.其 它 (包 括 分 量 运 算 符 · ,下 标 运 算 符 [],实 例 运 算 符 instanc eof,内 存 分 配运 算 符 new,强 制 类 型 转 换 运 算 符 (类 型 ), 方 法调 用 运 算 符 () 等 )
本 章 中 我 们 主 要 讲 述 前 6类 运 算 符 。
§ 3.1 算 术 运 算 符
算 术 运 算 符 作 用 于 整 型 或 浮 点 型 数 据 ,完 成 算 术 运 算。
一 、 二 元 算 术 运 算 符 ,如 下 表 所 示
运算符 用法 描述
+ op1+op2 加
- op1-op2 减
* op1*op2 乘
/ op1/op2 除
% op1%op2 取模(求余)
Java对 加 运 算 符 进 行 了 扩 展 ,使 它 能 够 进 行 字 符 串 的连 接,如 "abc"+"de",得到 串 "abcde"。 我 们 将 在第 七 章 中 讲 解 。
与 C、 C++不 同 ,对 取 模 运 算 符 %来 说 ,其 操 作 数 可 以为浮点 数 , 如37.2%10=7.2。
二 、 一 元 算 术 运 算 符 ,如 下 表 所 示 :
运算符 用法 描述
+ +op 正值
- -op 负值
++ ++op,op++ 加1
-- --op,op-- 减1
i++与 ++i的 区 别
i++在 使 用 i之 后 ,使 i的 值 加 1,因 此 执 行 完 i++后 ,整 个 表达式的 值 为 i,而 i的 值变 为 i+1。
++i在 使 用 i之 前 ,使 i的 值 加 1,因 此 执 行 完 ++i后 ,整 个 表达式和 i的 值 均 为 i+1。
对 i--与 --i同 样 。
例 3.1.下 面 的 例 子 说 明 了 算 术 运 算 符 的 使 用
public class ArithmaticOp{
public static void main( String args[] ){
int a=5+4; //a=9
int b=a*2; //b=18
int c=b/4; //c=4
int d=b-c; //d=14
int e=-d; //e=-14
int f=e%4; //f=-2
double g=18.4;
double h=g%4; //h=2.4
int i=3;
int j=i++; //i=4,j=3
int k=++i; //i=5,k=5
System.out.println("a = "+a);
System.out.println("b = "+b);
System.out.println("c = "+c);
System.out.println("d = "+d);
System.out.println("e = "+e);
System.out.println("f = "+f);
System.out.println("g = "+g);
System.out.println("h = "+h);
System.out.println("i = "+i);
System.out.println("j = "+j);
System.out.println("k = "+k);
}
}
其结果为:
C:/>java ArithmaticOp
a = 9
b = 18
c = 4
d = 14
e = -14
f = -2
g = 18.4
h = 2.4
i = 5
j = 3
k = 5
运 算 符 和 表 达式相关推荐
- 关 于 正 则 表 达 式 的 类 习 题
1. 如何把 /etc/passwd 中用户uid 大于500 的行给打印出来? 2. awk中 NR,NF两个变量表示什么含义?awk -F ':' '{print $NR}' /etc/passw ...
- 运算符的优先级古诗顺口溜记忆法
记忆<秋夜打渔图> 秋夜打渔图 扩大成甲鱼,大小不等鱼: 位于一伙伙,渔火三服豆: 意义:渔夫捕鱼,有甲鱼,大小不等的鱼,都在一伙伙渔夫的手里,河面上有星星点点的渔火,还有丰收的大豆,整个 ...
- 定义变量和常量的规范 c语言,C语言编程规范教材及练习(标识符命名与定义 变量 宏、常量 表的达式).pptx...
C语言编程规范教材及练习(标识符命名与定义 变量 宏.常量 表的达式) C语言编程规范教材C语言编程规范工作组 201104目录标识符命名与定义 变量宏.常量表达式标识符的命名要清晰原则3.1 标识符 ...
- Java正則表達式詳解
來源:http://www.computerworld.com.cn 如果你曾經用過Perl或任何其他內建正則表達式支持的語言,你一定知道用正則表達式處理文本和匹配模式是多簡單.如果你不熟悉這個術語, ...
- 最全正則表達式汇总—想要的都有了
正则式太难学,并且easy忘记 ,西西是看过非常多次.都是一会就所有不记得了滴.非常多不太懂正则的朋友.在遇到须要用正则校验数据时,往往是在网上去找非常久.结果找来的还是不非常符合要求. 所以我近期把 ...
- Java正則表達式入门
众所周知,在程序开发中,难免会遇到须要匹配.查找.替换.推断字符串的情况发生,而这些情况有时又比較复杂,假设用纯编码方式解决,往往会浪费程序猿的时间及精力.因此,学习及使用正則表達式,便成了解决这一 ...
- JAVA正則表達式小总结
近期项目中正在做后台校验,而后台校验也基本都是使用正則表達式校验.本文做一些粗略的总结. 1.字符串长度:.{1,10},注意有一个点在{}前,表示匹配全部.'{}'之前一定是一个捕获组,因此假设有其 ...
- 用 C 语言开发一门编程语言 — S-表达式
目录 文章目录 目录 前文列表 使用 S-表达式进行重构 读取并存储输入 实现 S-Expression 语法解析器 实现 S-Expression 存储器 实现 lval 变量的构造函数 实现 lv ...
- EcmaScript正則表達式( 深入淺出系列之淺出 )
来源:http://www.v-ec.com/dh20156/article.asp?id=202 使用方法 創建對象 var r = new RegExp("表達式",& ...
最新文章
- HP-UX下查询函数是否为线程安全的方法
- 近期学习oracle 数据库总结
- 还原软件实施更安全防护机器狗
- 1074 Reversing Linked List (25 分)【难度: 一般 / 知识点: 链表】
- 主成分分析步骤_多元分析(1)--主成分分析
- MySql简介及概念
- 【LINUX/UNIX网络编程】之使用消息队列,信号量和命名管道实现的多进程服务器(多人群聊系统)...
- redis排行榜之日排行周排行设计
- golang Println、Printf、Sprintf的区别
- Zookeeper集群安装Version3.5.1
- 本地文件上传至docker容器
- (c语言)输出1到100之间的所有素数
- html 清除flex,清除display:flex样式
- [转载] 高阶函数和柯里化
- [USACO10FEB]购买巧克力Chocolate Buying
- java 进程通信代码
- 英雄联盟一直连接服务器win10,win10上玩英雄联盟无法连接服务器是怎么回事
- 微信新功能,最牛的不是“斗图”!
- Fantastic Blog CMS SQL注入漏洞(CVE-2022-28512)
- 重磅!瑞泰信息发布中国企业数字化增长行业实践白皮书——《数字化平台造就企业增长新引擎》