0010101 java_JAVA入门教程运算符和表达式
JAVA入门教程运算符和表达式
运 算 符 指 明 对 操 作 数 所 进 行 的 运 算 。 按 操 作 数 的 数 目 来 分 ,可 以 有 一 元 运 算 符 (如 ++、
-),二 元
运 算 符 (如 +、 >)和 三
元 运 算 符 (如 ?:),它 们 分 别 对 应 于 一 个 、 两 个 和 三 个 操 作 数 。 对
于 一
元 运 算 符 来 说 ,可 以
有 前 缀 表 达 式 (如 ++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
§ 3.2关 系
运 算 符
关 系
运 算 符 用 来 比 较 两 个 值 ,返 回
布 尔 类 型 的 值 true或 false。 关 系 运 算 符 都 是 二 元 运 算
符 ,如 下 表 所 示 :
运算符 用法
返回true的情况
> op1>op2 op1大于op2
>+ op1>=op2 op1大于或等于op2
< op1<op2 op1小于op2
<= op1<=op2 op1小于或等于op2
== op1==op2 op1与op2相等
!= op1!=op2 op1与op2不等
Java中 ,任 何 数 据 类 型 的 数 据 (包
括 基 本 类 型 和 组 合 类 型 )都 可
以 通 过 ==或 !=来 比
较 是 否
相 等 (这 与 C、 C++不 同 )。
关 系
运 算 的 结 果 返 回 true或 false,而 不 是 C、 C++中 的 1或 0。
关 系
运 算 符 常 与 布 尔 逻 辑 运 算 符 一 起 使 用 ,作 为
流 控 制 语 句 的 判 断 条 件 。 如
if( a>b &&
b==c)
§ 3.3布 尔
逻 辑 运 算 符
布 尔
逻 辑 运 算 符 进 行 布 尔 逻 辑 运 算 ,如
下 表 所 示 :
op1 op2 op1&&op2 op1||op2 !op1
false false false false true
false true false true true
true false false true false
true true true true false
}@@@
·&&、‖为二元运算符,实现逻辑与、逻辑或。
·! 为一元运算符,实现逻辑非。
·对于布尔逻辑运算,先求出运算符左边的表达式的值,对或运算如果为true,则整个表
达式的结果为true,不必对运算符右边的表达式再进行运算;同样,对与运算,如果左边表达式
的值为false,则不必对右边的表达式求值,整个表达式的结果为false。
下面的例子说明了关系运算符和布尔逻辑运算符的使用。
@@@[
public class RelationAndConditionOp{
public static void main( String args[] ){
int a=25,b=3;
boolean d=a<b; //d=false
System.out.println("a<b = "+d);
int e=3;
if(e!=0 && a/e>5)
System.out.println("a/e = "+a/e);
int f=0;
if(f!=0 && a/f>5)
System.out.println("a/f = "+a/f);
else
System.out.println("f = "+f);
}
}
其运行结果为:
C:\>java
RelationAndConditionOp
a<b = false
a/e = 8
f = 0
注 意 :上 例
中 ,第
二 个 if语 句
在 运 行 时 不 会 发 生 除 0溢
出 的 错 误 ,因 为 e!=0为 false,所 以 就 不 需
要 对 a/e进 行
运 算 。
§ 3.4位 运
算 符
位 运
算 符 用 来 对 二 进 制 位 进 行 操 作 ,Java中 提 供 了 如 下 表 所 示 的 位 运 算 符 :
位 运
算 符 中 ,除
~ 以 外 ,其
余 均 为 二 元 运 算 符 。
操 作
数 只 能 为 整 型 和 字 符 型 数 据 。
3.4.1补
码
Java使 用
补 码 来 表 示 二 进 制 数 ,在
补 码 表 示 中 ,最
高 位 为 符 号 位 ,正 数
的 符 号 位 为 0,负
数
为 1。 补 码 的 规 定 如 下 :
对 正
数 来 说 ,最
高 位 为 0,其
余 各 位 代 表 数 值 本 身 (以
二 进 制 表 示 ),如 +42的 补
码 为
00101010。
对 负
数 而 言 ,把
该 数 绝 对 值 的 补 码 按 位 取 反 ,然 后
对 整 个 数 加 1,即
得 该 数 的 补 码 。 如
-42的 补
码 为 11010110 (00101010 按 位 取 反 11010101 +1 11010110 )
用 补
码 来 表 示 数 ,0的
补 码 是 唯 一 的 ,都 为 00000000。 (而 在
原 码 ,反 码
表 示 中 ,+0和 -0的 表
示
是 不
唯 一 的 ,可
参 见 相 应 的 书 籍 )。
而 且 可 以 用 111111表 示 -1的 补
码 (这
也 是 补 码 与 原 码 和 反
码 的
区 别 )。
3.4.2按
位 取 反 运 算 符 ~
~ 是
一 元 运 算 法 ,对
数 据 的 每 个 二 进 制 位 取 反 ,即
把 1变
为 0,把 0变 为 1。
例 如 :
0010101
~
1101010
注 意 ,~ 运
算 符 与 - 运
算 符 不 同 ,~ 21≠ -21。
3.4.3按
位 与 运 算 符 &
参 与
运 算 的 两 个 值 ,如 果
两 个 相 应 位 都 为 1,则
该 位 的 结 果 为 1,否 则
为 0。
即 :
0 & 0 = 0,0 &1 = 0,1 & 0 = 0,1 & 1 = 1
0010101 java_JAVA入门教程运算符和表达式相关推荐
- java学习笔记2(datawhale教程):运算符和表达式、流程控制、数组
java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 文章目录 java学习笔记2(datawhale教程):运算符和表达式.流程控制.数组 一.运算符和表达式 1.数学函数与 ...
- 除号java_Java基础教程-运算符
所谓运算符,就好比日常生活中的运算符号"+"."-"."*"."/",这些符号几乎天天都要用到.在Java中,运算符就和 ...
- 【Delphi入门】运算符与表达式
运算符 Delphi 7.0 有 8 类运算符 算术运算符 取正.取负:+.- 加减乘除:/ 与 C++ 中不同,除法得到的是实型数据 整除:div 取余:mod 字符串运算符 "+&quo ...
- python入门之一运算符与表达式:第一关正确写出表达式
#(1)从测试集获取整数数值a,b,c,d,e a=int(input()) #输入a并转换为整型 b=int(input()) ...
- 鸡啄米:C++编程入门系列之五(运算符和表达式)
转载自: http://www.jizhuomi.com/software/32.html 上一讲鸡啄米给大家讲了一些数据类型,这一讲主要讲解编程入门知识-运算符和表达式.运算符,顾名思义,就是用于计 ...
- 取得数组下标_《零基础C++入门教程》——(8)搞定二维数组与循环嵌套
一.学习目标 了解二维数组的使用方法 了解循环嵌套的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<零基础看得懂的C语言入门教程>--(二) ...
- 【python教程入门学习】Python的运算对象、运算符、表达式和语句
编程的本质就是数据和运算,数据由基本数据类型.数据结构来表示,运算就是对这些数据的各种操作,基本的加减乘除.是非判断.流程控制等等.这些操作就是今天我们要讲的运算符.表达式和语句. 前面我们学习Pyt ...
- 《零基础看得懂的C++入门教程 》——(3)表达式花样挺多鸭
一.学习目标 了解变量之间的计算 了解什么是表达式 了解什么是自增.自减 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想了解编译原理和 ...
- ES6 入门教程 9 数组的扩展 9.1 扩展运算符
ES6 入门教程 ECMAScript 6 入门 作者:阮一峰 本文仅用于学习记录,不存在任何商业用途,如侵删 文章目录 ES6 入门教程 9 数组的扩展 9.1 扩展运算符 9.1.1 含义 9.1 ...
最新文章
- vscode 终端 进入node_安装了Node.js 从VScode 使用node -v 和 npm -v等命令却无效
- matlab 灰色预测(有点离谱)
- 【PC工具】文件压缩解压工具winrar解压缩装机必备软件,winRAR5.70免费无广告
- 执行SQL-获取缓存
- ES6 (总结篇二)
- codeblocks如何导入项目_T3如何利用系统工具导入导出复制存货档案
- Redis锁的简单应用
- [安卓] 14、安卓HTTP——POST和GET用法分析
- 21秋期末考试工程项目管理10324k2
- idea解決tomcat乱码问题
- 关于多目标跟踪的一点理解
- 东师《《证据法学》》在线作业一二三离线作业网考
- i12蓝牙耳机怎么设置成中文_耳朵里的小精灵——乐迈车载智能蓝牙耳机
- 北京飞漫软件魏永明:浏览器技术与三网融合
- keepalived高可用集群实战项目
- Python moviepy 快速视频剪辑编辑神器
- 用python播放声音文件(mp3、wav、m4a等)
- CSS初始化样式应该怎么写
- 提高win7系统运行速度的方法
- 【谈天说地】巴洛克建筑