第3章 运算符、表达式和流程控制
2012-04-05 11:23
381 查看
第3章 运算符、表达式和流程控制
运算符和表达式
基本概念
运算符:用于标记对数据执行某种运算的特定符号 。
操作数:参加运算的数据称为运算对象(操作数)。
分类
按运算符的功能,将运算符分为:算术运算符、关系运算符、逻辑运算符、位运算符等
按参与运算的操作数的个数,将运算符分为:单目运算符、双目运算符、三目运算符
表达式:若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列 。 算术运算符
加运算符+:连接两个字符串。例如,“abc”+12的结果为“abc12”;”abc”+1+2=? “abc”+(1+2)=?
Java语言既可对整数取模,也可以对小数取模。
例如,16.2%5=1.2
har类型的数据可以进行算术运算,而boolean类型的数据不能进行算术运算。
++(--)运算符的操作数必须是变量,不能是常量或表达式 。++i 或者i++ (注意两者的区别)
关系运算符
关系运算符用于判断两个操作数的等价性和大小关系,得到的结果为布尔类型,取值为true或false。常用于逻辑判断(if语句或循环)。
逻辑运算符
逻辑运算符可以对boolean类型数据进行逻辑上的“与”、“或”、“非”、“异或”等运算,结果仍为boolean类型,通常用于程序的流程控制。逻辑运算符 &(&&)、|(||)、!
注意:运算符(&、|)和运算符(&&、||)的区别。
位运算符
位运算符用来对整型(byte、short、int、long)或字符型(char)数据二进制位进行操作,结果为一个整数。
~(按位取反)
格式: ~a
功能:将操作数a中的二进制位由1变0,由0变1。
例如:int x=2; ~x=?
&(按位相与)
格式:a & b
功能:两个操作数的相应位都为1,则该位为1,否则为0。 例如, int x=2,y=7; x & y = ?
|(按位相或)
}
格式:a | b
功能:两个操作数的相应位中有一个为1,则该位的结果为1。例如,int x=5,y=8; x | y = ?
^(按位相异或)
格式:a ^ b
功能:两个操作数的相应位相异,则该位的结果为1,否则为0。例如,int x=5,y=8; x ^ y = ?
>>(按位右移)
格式:a >> b
功能:将a右移b位,右端的低位被舍弃,左端高位补原来的符号位 。例如,byte x=-6;x >>2 = ?
<<(按位左移)
格式:a << b
功能:将a左移b位,右端的低位补0,左端的高位被舍弃。例如,byte x=-6;x << 2 = ?
>>>(无符号右移)
格式:a >>> b
功能:将a右移b位,右端的低位被舍弃,左端的高位补0。例如,byte x=-6;x >>> 2 = ?
方法getOneBit()可以返回参数num的第n-1位。
public int getOneBit(int num,int n){
int i=1 << (n-1);
int nb = num & i;
return nb >> (n-1);
赋值运算符
格式:变量=表达式
double d = 7.8f; //合法
int a = 78L; //非法
int a = (int)78L; //合法
复合的赋值运算符
+= -= *= /= %= &= |= ^= >>= <<= >>>=
条件运算符
格式:表达式1 ? 表达式2 :表达式3
弹出输入对话框,接收用户输入: JOptionPane.showInputDialog(s)
将数字的字符串表示形式转换为整数:Integer.parseInt(s)
result = (score>=60) ? "及格" : "不及格"
System.out.println(result);
表达式
表达式(expression)是由若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列。
运算符标明对操作数进行何种操作;
操作数可以是变量、常量或有返回值的方法调用等其他的表达式。
(a-b)/c+4 5>=a a>3 && a<10 10*max(a,b) a=10 100
运算符和表达式
基本概念
运算符:用于标记对数据执行某种运算的特定符号 。
操作数:参加运算的数据称为运算对象(操作数)。
分类
按运算符的功能,将运算符分为:算术运算符、关系运算符、逻辑运算符、位运算符等
按参与运算的操作数的个数,将运算符分为:单目运算符、双目运算符、三目运算符
表达式:若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列 。 算术运算符
加运算符+:连接两个字符串。例如,“abc”+12的结果为“abc12”;”abc”+1+2=? “abc”+(1+2)=?
Java语言既可对整数取模,也可以对小数取模。
例如,16.2%5=1.2
har类型的数据可以进行算术运算,而boolean类型的数据不能进行算术运算。
++(--)运算符的操作数必须是变量,不能是常量或表达式 。++i 或者i++ (注意两者的区别)
关系运算符
关系运算符用于判断两个操作数的等价性和大小关系,得到的结果为布尔类型,取值为true或false。常用于逻辑判断(if语句或循环)。
逻辑运算符
逻辑运算符可以对boolean类型数据进行逻辑上的“与”、“或”、“非”、“异或”等运算,结果仍为boolean类型,通常用于程序的流程控制。逻辑运算符 &(&&)、|(||)、!
注意:运算符(&、|)和运算符(&&、||)的区别。
位运算符
位运算符用来对整型(byte、short、int、long)或字符型(char)数据二进制位进行操作,结果为一个整数。
~(按位取反)
格式: ~a
功能:将操作数a中的二进制位由1变0,由0变1。
例如:int x=2; ~x=?
&(按位相与)
格式:a & b
功能:两个操作数的相应位都为1,则该位为1,否则为0。 例如, int x=2,y=7; x & y = ?
|(按位相或)
}
格式:a | b
功能:两个操作数的相应位中有一个为1,则该位的结果为1。例如,int x=5,y=8; x | y = ?
^(按位相异或)
格式:a ^ b
功能:两个操作数的相应位相异,则该位的结果为1,否则为0。例如,int x=5,y=8; x ^ y = ?
>>(按位右移)
格式:a >> b
功能:将a右移b位,右端的低位被舍弃,左端高位补原来的符号位 。例如,byte x=-6;x >>2 = ?
<<(按位左移)
格式:a << b
功能:将a左移b位,右端的低位补0,左端的高位被舍弃。例如,byte x=-6;x << 2 = ?
>>>(无符号右移)
格式:a >>> b
功能:将a右移b位,右端的低位被舍弃,左端的高位补0。例如,byte x=-6;x >>> 2 = ?
方法getOneBit()可以返回参数num的第n-1位。
public int getOneBit(int num,int n){
int i=1 << (n-1);
int nb = num & i;
return nb >> (n-1);
赋值运算符
格式:变量=表达式
double d = 7.8f; //合法
int a = 78L; //非法
int a = (int)78L; //合法
复合的赋值运算符
+= -= *= /= %= &= |= ^= >>= <<= >>>=
条件运算符
格式:表达式1 ? 表达式2 :表达式3
弹出输入对话框,接收用户输入: JOptionPane.showInputDialog(s)
将数字的字符串表示形式转换为整数:Integer.parseInt(s)
result = (score>=60) ? "及格" : "不及格"
System.out.println(result);
表达式
表达式(expression)是由若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列。
运算符标明对操作数进行何种操作;
操作数可以是变量、常量或有返回值的方法调用等其他的表达式。
(a-b)/c+4 5>=a a>3 && a<10 10*max(a,b) a=10 100
相关文章推荐
- 第3章 运算符、表达式和流程控制
- 第3章 运算符、表达式和流程控制
- 第3章 运算符、表达式和流程控制
- 第3章 运算符、表达式和流程控制
- 【JavaSE入门系列】第04章_运算符表达式流程控制
- 运算符、表达式和流程控制
- smarty模板 变量 运算符 表达式 流程控制 函数
- 阿甘学java视频--运算符,表达式,流程控制
- Java 运算符、表达式和流程控制
- 【JavaScript】(2)标识符与关键字\基本|引用数据类型 \变量 \运算符与表达式\流程控制语句
- 从C#到Python —— 2 运算符、表达式和流程控制
- PHP_零基础学php_2变量、预定义变量、预定义常量、表达式、运算符、程序控制流程
- PHP_零基础学php_2变量、预定义变量、预定义常量、表达式、运算符、程序控制流程
- javascript学习(2)——[基础回顾]运算符、表达式、流程控制语句
- javascript学习(2)——[基础回顾]运算符、表达式、流程控制语句
- Java学习4 运算符、表达式、流程控制
- 2016/04/29 smarty模板 1, 初步 目标 : 变量 运算符 表达式 流程控制 函数
- 运算符、表达式和流程控制
- 运算符,表达式,流程控制
- java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)