数据类型与运算符(二)

ゞ 浴缸里的玫瑰 2024-04-29 11:02 138阅读 0赞

学习目标:

1.掌握数据类型转换 2.掌握关系运算符的使用 3.掌握逻辑运算符的使用 4.了解位运算符 5.掌握条件运算符的使用 6.掌握运算符的优先级


学习内容:

一.基本数据类型的类型转换

结论:不同的基本数据类型之间进行运算时需要进行类型转换。
经验1:boolean类型与其他基本类型不能进行类型的转换(既不能进
行自动类型的提升,也不能强制类型转换), 否则,将编译出错。
经验2:基本数据类型的类型转换主要在赋值运算、算术运算时发生。
转换方式有两种:自动类型转换和强制类型转换

1.1自动类型转换

规则1:如果一个操作数为double型,则整个表达式可提升为double型
规则2:满足自动类型转换的条件
两种类型要兼容:
数值类型(整型和浮点型)互相兼容
目标类型大于源类型:
例如:double 型大于 int 型
默认转换(从小到大的转换)
ubyte,short,char—int—long—float—double
ubyte,short,char相互之间不转换,他们参与运算首先转换为int类型

1.2强制类型转换

强制类型转换的语法

(类型名)表达式

例:

int b = (int)10.2;
double a = 10;
int c = (int)a;

二.运算符

2.1关系运算符














































运算符 含义 范例 结果
== 等于 5==6 false
!= 不等于 5!=6 true
> 大于 5>6 false
< 小于 5<6 true
>= 大于等于 5>=6 false
<= 小于等于 5<=6

true

#

①=为赋值运算符,==为等于运算符
②关系表达式的结果为布尔值
③>、<、>=、<=运算符只支持数值类型的数据比较
④==、!=运算符支持所有数据数据类型的比较
⑤>、<、>=、<= 运算符的优先级别高于==、!=

2.2逻辑运算符







































运算符 含义 运算规则
&& 短路与 两个操作数都是true,结果才是true;如果左边为false,右边的表达式不会进行运算
|| 短路或 两个操作数一个是true,结果为true;如果左边为true,右边的表达式不会进行运算
逻辑非 操作数为true,结果为false;操作数为false,结果为true
& 逻辑与 两个操作数都是true,结果才是true;不论左边取值,右边的表达式
都会进行运算
| 逻辑或 两个操作数一个是true,结果为true;如果左边为true,右边的表达
式都会进行运算
^ 逻辑异或 两个操作数相同,结果为false;两个操作数不同,结果为true

2.3位运算符












































运算符 含义 运算规则
& 按位与 两个操作数都是1,结果才是1
| 按位或 两个操作数一个是1,结果为1
^ 按位异或 两个操作数相同,结果为0;两个操作数不同,结果为1
~ 按位非 两个操作数都是true,结果才是true;不论左边取值,右边的表达式都会进行运算
<< 左移 右侧空位补0
>> 右移 左侧空位补最高位,即符号位
>>> 无符号右移 左侧空位补0

注意

①位运算符的操作数都是整型数,包括int、short、long、byte和char
②位运算符的运算结果也都是整型数,包括int、long
③如果操作数是char、byte、short,位运算前其值会自动晋升为int,运
算结果也为int
④位运算符对操作数以二进制为单位进行运算

2.4条件运算符

三目运算符

条件 ? 表达式1 : 表达式2

如果条件为真则返回表达式1,如果条件为假则返回表达式2

2.5运算符的优先级

1.优先级别最低的是赋值运算符
2.单目运算符包括! ~ ++ —,优先级别高
3.可以通过()控制表达式的运算顺序,()优先级最高
4.总体而言,优先顺序为算术运算符 > 关系运算符 > 逻辑运算符
5.从右向左结合性的只有赋值运算符、三目运算符和单目运算符

发表评论

表情:
评论列表 (有 0 条评论,138人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JavaSE之数据类型运算符

    Java标识符,有三点要求 标识符由字母、数字、\_、$所组成,其中不能以数字作为开头,也不能用java中的关键字 标识符采用有意义的简单命名 $不要再代码中出现 对于

    相关 数据类型运算符

    一、java标识符 标识符是编程时使用的名字:Java对包、类、接口、方法、变量、常量(不包括项目名)等命名时使用的字符序列称为标识符。 Java标识符有如下命名