计算机表达式的结果数据类型为,变量&数据类型&表达式

2)强制类型转换

a)两种类型相互兼容

b)目标类型小于原类型

原类型 变量名1=值;

变量名2=(目标类型)变量名1;

强转后的三种情况:

1.数据没有发生丢失 原类型的数值 < 目标类型的范围

2…数据发生丢失 原类型的数值 >目标类型的范围

3.小数强转整数后,会丢失小数部分

运算符&表达式

一、表达式

是由变量、字面值、运算符组成的一个式子,一般都有结果。

一般情况下,我们需要使用一个变量来接收表达式的数值,接收这个表达式的变量类型需要与该表达式的数值的数 据类型一致。

我们可以把一个表达式直接放在输出语句的()中,输出结果为该表达式的值

例:

int a=10;

int b=a+12;

System.out.println(a+10);

System.out.println(a==b);

二、java的自动类型提升机制

1.两个数或变量进行运算 如果有一个是double 则其结果就是double类型 优先级第1的规则

2.两个数数或变量进行运算 如果有一个是float 则其结果就是** ** 优先级第2的规则 ]

3.两个数数或变量进行运算 如果有一个是long 则其结果就是long类型 优先级第3的规则

4.两个数数或变量进行运算 其他情况(既没有double 也没有float与long参****与) 其结果均为int类型 优先级第4的规

三、运算符

1.算数运算符

+ 表达式结果为二者之和 ‐ 表达式结果为二者之差 * 表达式结果为二者之积 / 表达式结果为二者之商 如果运算时没有小数参与则只保留整数部分 % 表达式结果为二者相除之余

2.赋值运算符

= = 右边对左边进行赋值 int a=10;

+= a+=b ‐‐‐> a = a+b;

‐= a‐=b ‐‐‐> a = a‐b;

*= a=b ‐‐‐> a = a*b;

/= a/=b ‐‐‐> a = a/b;

%= a%=b ‐‐‐> a = a%b;

3.++&-- 自增与自减运算符

a++: 在一次运算后 执行a = a+1;

++a: 在一次运算前 执行a = a+1;

a‐‐ : 在一次运算后 执行a = a‐1;

‐‐a : 在一次运算前 执行a = a‐1;

4.关系运算符

如果一个表达式的结果为布尔类型的值 则这种表达式被成为布尔表达式

==判断两者是否相等;> 判断左边是否大于右边 ; >= 判断左边是否大于等于右边 < 判断左边是否小于右边 <= 判断左边是否小于等于右边 != 判断左边是否不等于右边

当使用关系运算符去判断一个表达式是否成立时,结果是布尔类型, 成立为true,不成立为false

5.逻辑运算符

1.&& 短路与

a)语法:布尔表达式1 && 布尔表达式2

b) 作用:当 布尔表达式1 与 布尔表达式2 结果都为true时 整个表达式为true,否则为false

c)特性:如果布尔表达式1为 false 则不再判断 布尔表达式2

2.& 非短路与

a)语法:布尔表达式1 & 布尔表达式2 b) 作用:当 布尔表达式1 与 布尔表达式2 结果都为true时 整个表达式为true,否则为false

c)特性:两个布尔表达式无论true 或 false 都会被判断

3.|| 短路或

a)语法:布尔表达式1 || 布尔表达式2 b) 作用: 布尔表达式1 与 布尔表达式2 有一个结果true时 整个表达式为true,否则为false

c)特性:如果布尔表达式1为 true 则不再判断 布尔表达式

4.| 非短路或

a)语法:布尔表达式1 | 布尔表达式2 b) 作用: 布尔表达式1 与 布尔表达式2 有一个结果true时 整个表达式为true,否则为false

c)特性:无论两个布尔表达式的结果是否为true 均需要全部判断

5.!对表达式结果取反

a)语法:!(布尔表达式)

b)作用:将()内的布尔表达式结果取反

6.条件运算符(*三目运算符)

语法: 布尔表达式? 表达式1(或一个字面值1):表达式2(或一个字面值2)

作用: 如果布尔表达式为true 则整个表达式的结果 为表达式1(字面值1)的结果 如果布尔表达式为false 则整个表达式的结果 为表达式2(字面值2)的结果

例: int a = 10;

int b = 20;

int result = a>b? a:b; System.out.println(result)

7.运算符的优先级

1

括号() []

2

正(+)负(-)号

3

自增自减,非(++ – !)

4

乘(x)除(/),取余(%)

5

加(+)减(-)

6

移位运算(<< >> >>>)

7

大(> >= < <= )小关系

8

相等关系(== !=)

9

按位与(&)

10

按位异或(^)

11

按位或(|)

12

逻辑与(&&)

13

逻辑或(||)

14

条件运算(?: )

15

赋值运算(= += -= *= /= %=)

16

位赋值运算(&= |= <<= >>= >>>=)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值