为了账号安全,请及时绑定邮箱和手机立即绑定

javaday02-1 算术、赋值运算符

标签:
Android

算术运算符:-   +   /   %   --   ++

前面4个都会,减,加,取商,取余,

/ 有个窍门,若想得到结果为double类型,可以这样:

[代码]xml代码:

?

1

2

3

4

5

int x = 4;

int y = 5;

System.out.println(x/y); //这个结果肯定是0,因为只取整数位

System.out.println(x*1.0/y); //结果为0.8 因为x*1.0已经改变了         

                                            //x的类型

++、-- 的运用:

单独使用的时候,符号放在变量的前面和后面的效果一样的(对变量自身自增1或者自减1):

[代码]xml代码:

?

1

2

3

4

5

6

int x = 3;

int y = 4;

x++;  //4   

y++; //5

++x; //4

++y;//5     --也一样

参与运算使用的时候

--++放在变量的前面,先自增/自减,然后再参与运算(得到的值给它)

--++放在变量的后面,先参与运算(原来值给它),然后再自增、自减

例子:

[代码]xml代码:

?

1

2

3

4

5

6

7

8

9

int a = 3;

int b = 4;

int c = a++;

int d = b--;

 

System.out.println(a);     //4  a先自增

System.out.println(b);     //3  b先自减

System.out.println(c);     //3  c得到a原来的值

System.out.println(d);     //4  d得到b原来的值

?

1

2

3

4

5

6

7

8

9

<pre class="brush:xml;auto-links:false;" style="line-height:   25.2000007629395px;">int a = 3;

int b = 4;

int c = ++a;

int d = --b;

 

System.out.println(a);     //4  a先自增 再把结果赋予给c

System.out.println(b);     //3  b先自减 再把结果赋予给d

System.out.println(c);     //4  c得到a自增后的值

System.out.println(d);     //3  d得到b自减后的值</pre>

练习:

[代码]java代码:

?

1

2

3

4

5

6

7

int a = 10;

int b = 10;

int c = 10;

a = b++; // a=10,b=11,c=10

c = --a; //a=9,b=11,c=9

b = ++a; //a=10,b=10,c=9

a = c--;//a=9,b=10,c=8

练习:

[代码]java代码:

?

1

2

3

4

5

6

7

8

int x = 4;

int y = (x++)+(++x)+(x*10);

(x++):x=4参与运算,结束后x=5;

(++x):x=6参与运算,结束后x=6;

(x*10):x=6参与运算,结束后x=6;

  y=4+6+60=70

System.out.println(x);

System.out.println(y);

 

赋值运算符:=     扩展赋值运算符: +=  -=  /=  %=

int x = 10:基本赋值运算符

x += 10 :x = 20,左右两边 x和10相加,再赋值给x;

x -= 10:x=0,左右两边 x和10相减,再赋值给x;

x /= 10:x=1,左右两边 x和10相除取商,再赋值给x;

x %=10: x=0, 左右两边 x和10相除取余,再赋值给x;



面试题:

[代码]java代码:

?

1

2

3

short s = 1, s = s+1;

short s = 1, s+=1;

上面两个代码有没有问题?如果有,哪里有问题?

答:

         第一个有问题,因为会损失精度;(如前面说过的byte)

         第二个没有问题,因为扩展的赋值运算符隐含了一个强制类型转换。

原文链接:http://www.apkbus.com/blog-833059-61612.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消