java计算7 2代码_7.Java运算符

7.Java运算符

Java运算符分为, 算术运算符, 复合运算符, 关系运算符, 条件运算符.

① Java算数运算符

Java算数运算符: 加, 减, 乘, 除(取模, 取余), 算数运算符从右往左赋值.即将等号右边的值,赋给等号左边的变量.加+int a = 1;int b = 2;int c = a + b;System.out.println(c);减-int a = 1;int b = 2;int c = a - b;System.out.println(c);乘*int a = 1;int b = 2;int c = a * b;System.out.println(c);除-取模/

对整数取模运算,相当于取结果的整数,去掉余数.int a = 1;int b = 2;int c = a / b;System.out.println(c);除-取余%

对整数取余运算,相当于取得不够整除部分的数值.int a = 1;int b = 2;int c = a % b;System.out.println(c);

② Java自动类型转换

当两个类型不同的数据类型运算时,结果自动转化为取值范围大的数据.byte->short->int->long->float->double

具体规则:布尔型和其它基本数据类型之间不能相互转换.

byte型可以转换为short、int、、long、float和double.

short可转换为int、long、float和double.

char可转换为int、long、float和double.

int可转换为long、float和double.

long可转换为float和double.

float可转换为double.

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java算数运算符

*/public class Demo1 {

public static void main(String[] args) {

/** 加`+`*/

int a = 1;

int b = 2;

int c = a + b;

System.out.println(c);

/** 减`-`*/

a = 1;

b = 2;

c = a - b;

System.out.println(c);

/** 乘`*` */

a = 1;

b = 2;

c = a * b;

System.out.println(c);

/** 除-取模`/`对整数取模运算,相当于取结果的整数,去掉余数.*/

a = 1;

b = 2;

c = a / b;

System.out.println(c);

/** 除-取余`%`对整数取余运算,相当于取结果的余数.*/

a = 1;

b = 2;

c = a % b;

System.out.println(c);

}}

输出:3

-1

2

0

1

③ Java复合运算符

复合运算符是一种简写. 以+=为例,表示加一个值再赋值给本身.常用的复合运算符:+=加法赋值a += 1;// 等同于以下a = a + 1;-=减法赋值b -= 1;// 等同于以下b = b - 1;*=乘法赋值c *= 1;// 等同于以下c = c * 1;/=除法赋值d /= 1;// 等同于以下d = d / 1;%=模运算赋值e %= 1;// 等同于以下e = e % 1;

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java复合运算符

*/public class Demo2 {

public static void main(String[] args) {

int a = 0;

/** += 运算*/

a += 1;

System.out.println(a);

/** -= 运算*/

int b = 0;

b -= 1;

System.out.println(b);

/** *= 运算*/

int c = 2;

c *= 3;

System.out.println(c);

/** /= 运算*/

int d = 5;

d /= 3;

System.out.println(d);

/** %= 运算*/

int e = 5;

e %= 3;

System.out.println(e);

}}

输出:1

-1

6

1

2

④ Java自增,自减运算符

自增运算符++, 自建运算符--.原理一样,以自增运算符为例介绍.

分前缀式(如++i)和后缀式(如i++). 以自增运算符(++)为例: 前缀式是先加1再使用,后缀式是先使用再加1.

单独执行自增自减时前缀式,后缀式单独执行结果一样.道理同自增运算符,只是加1,变成了减1.int i = 0;i++;System.out.println(i);int j = 0;++j;System.out.println(j);

放在运算过程中执行. 前缀,后缀放在运算过程中结果不同./** 后缀式*//** 初始化a和i*/a = 0;i = 0;a = i++;/** i使用前是0,此时i为0不加1,a为0. */System.out.println(a);/** 使用后i加1,i为1*/System.out.println(i);

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java自增,自减运算符

*/public class Demo3 {

public static void main(String[] args) {

/** 前缀,后缀单独执行结果一样*/

int i = 0;

i++;

System.out.println(i);

int j = 0;

++j;

System.out.println(j);

/** 前缀,后缀放在运算过程中结果不同*/

/** 前缀式*/

int a = 0;

i = 0;

a = ++i;

/** i使用前是0,此时i为0不加1,a为0. */

System.out.println(a);

/** 使用后i加1,i为1*/

System.out.println(i);

/** 后缀式*/

/** 初始化a和i*/

a = 0;

i = 0;

a = i++;

/** i使用前是0,此时i为0不加1,a为0. */

System.out.println(a);

/** 使用后i加1,i为1*/

System.out.println(i);

}}

输出:1

1

1

1

0

1

倒数第二个输出是`0`,这个就是后缀式的使用后计算导致的结果.

⑤ Java关系运算符

关系运算符用于比较两个数值之间的大小. 其运算结果为一个布尔值(boolean),只有true(真)和false(假)两个取值.

基本数据类型的关系运算符:>大于

>=大于或等于

<=小于或等于

==等于

!=不等于

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java关系运算符

*/public class Demo4 {

public static void main(String[] args) {

int a = 0;

int b = 0;

boolean c = a > b;

System.out.println(c);

boolean d = a 

System.out.println(d);

boolean e = a == b;

System.out.println(e);

boolean f = a == b;

System.out.println(f);

}}

输出:false

false

true

true

⑥ Java逻辑运算符

逻辑运算符主要用于进行条件真(true)假(false)运算.包括&&(且), ||(或),!(异或) , ^(非), instanceof(判断对象实例类型).&&且

两目运算符,需要2个值参与运算. 符号两边的条件都为true,运算结果为true.如果任一条件为false,结果为false.boolean a = true;boolean b = false;boolean c = a && b;// a和b里不同时为true,故`&&`运算的结果为falseSystem.out.println(c);||或

两目运算符,需要2个值参与运算. 符号两边的条如果任一条件为true,结果为true.如果都为false,结果为false.boolean a = true;boolean b = false;boolean c = a || b;// a和b里面,a为true,故`||`运算的结果为trueSystem.out.println(c);!非

单目运算符,需要1个值参与运算.得到与原布尔值相反的值. 原值为true,经过!运算,得false. 原值为false,经过!运算,得true.boolean a = true;boolean c = !a;// c为 a的相反值,即为trueSystem.out.println(c);^异或

两目运算符,需要2个值参与运算. 符号两边的布尔结果不同时,结果为true.如果相同(同时为true,或者同时为false),结果为false.boolean a = true;boolean b = false;boolean c = false;boolean d = a ^ b;boolean e = b ^ c;// a和b里不同,故`^`运算的结果为false,d为falseSystem.out.println(d);// c和d里同时为false,故`^`运算的结果为true,e为trueSystem.out.println(e);

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java逻辑运算符

*/public class Demo5 {

public static void main(String[] args) {

boolean a = true;

boolean b = false;

boolean c = a && b;

/** a和b里不同时为true,故`&&`运算的结果为false*/

System.out.println(c);

a = true;

b = false;

c = a || b;

/** a和b里面,a为true,故`||`运算的结果为true*/

System.out.println(c);

a = true;

c = !a;

/** c为 a的相反值,即为true*/

System.out.println(c);

a = true;

b = false;

c = false;

boolean d = a ^ b;

boolean e = b ^ c;

/** a和b里不同,故`^`运算的结果为false,d为false*/

System.out.println(d);

/** c和d里同时为false,故`^`运算的结果为true,e为true*/

System.out.println(e);

}}

输出:false

true

false

true

false

⑦ Java条件运算符

由两个符号组成?和:,要求有3个操作对象,所以也叫三目运算符.a

如果?前边的表达式(a

示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java三目运算符

*/public class Demo6 {

public static void main(String[] args) {

int a = 1;

int b = 2;

int c = a > b ? a : b;

/** a > b 为false,所以取":"后边的值b赋值给c, 故c为2.*/

System.out.println(c);

}}

输出:2

⑧ Java运算符优先级

基本的原则是有括号先算括号里的,然后先乘除后加减. 乘除都有时,从左往右依次计算. 加减从左往右依次计算. 示例代码:int a = 1;int b = 2;int c = 3;int d = a + b * c;/** 乘号的优先级比加号高, 先算b*c再加a,故d为7*/System.out.println(d);

加减乘除混合, 示例代码:package com.dashidan.lesson6;/**

* 大屎蛋教程网-localhost

* Java教程基础篇: 6. Java运算符

* Java运算符优先级

*/public class Demo7 {

public static void main(String[] args) {

int a = 1;

int b = 2;

int c = 3;

int d = a + b * c;

/** 乘号的优先级比加号高, 先算b*c再加a,故d为7*/

System.out.println(d);

/** 加减乘除混合*/

a = 1;

b = 2;

c = 3;

d = 4;

d = a + b * c / d - 5;

/** 乘号和除号的优先级比加号高, 先算乘除, 从左往右, b*c得6,d(值为4),`6/4`得`1.5`.取模运算省去小数,`b*c/d`得1*/

/** 加减法从左往右计算,a+1-5得-3,赋值给d.故d为-3.*/

System.out.println(d);

}}

输出:7

-3Java运算符优先级表优先级符号名称结合性1.点从左到右

( )圆括号从左到右

[ ]方括号从左到右

2+正号从右到左

-负号从右到左

++自增从右到左

- -自减从右到左

~按位非/取补运算从右到左

!逻辑非从右到左

3*乘从左到右

/除从左到右

%取余从左到右

4+加从左到右

-减从左到右

5<

>>带符号右移位运算符从左到右

>>>无符号右移从左到右

6

<=小于或等于从左到右

>大于从左到右

>=大于或等于从左到右

instanceof对象是否属于指定的类从左到右

7==等于从左到右

!=不等于从左到右

8&按位与从左到右

9|按位或从左到右

10^按位异或从左到右

11&&短路与从左到右

12||短路或从左到右

13?:条件运算符从右到左

14=赋值运算符从右到左

+=混合赋值运算符

-=

*=

/=

%=

&=

|=

^=

<<=

>>=

>>>=

⑨ 相关文章

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值