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

关于Java中的赋值运算符

public class HelloWorld{

    public static void main(String[] args) {

        int one = 10 ;

        int two = 20 ;

        int three = 0 ;

        int sum1=one+two;

        int sum2=sum1+=one;

        System.out.println(sum1);

————————————————————

为什么不要  int sum2=sum1+=one;这一行,结果输出为30;而加了这一行结果变成40.

望能者解答,不胜感激。


正在回答

4 回答

int sum2=sum1=sum1+one;

中sum1+one为40,然后把值赋给新的sum1,所以sum1和sum2都是40啊!!! 

1 回复 有任何疑惑可以回复我~
#1

Hucsen 提问者

ok,谢了~
2016-04-11 回复 有任何疑惑可以回复我~
#2

年轻人千万别熬夜 回复 Hucsen 提问者

兄弟 努力 奋斗
2016-04-11 回复 有任何疑惑可以回复我~
#3

Hucsen 提问者 回复 年轻人千万别熬夜

奋斗与君同!很感谢像你这样答问的朋友~-~
2016-04-11 回复 有任何疑惑可以回复我~
#4

年轻人千万别熬夜 回复 Hucsen 提问者

朋友 一起努力 我也只是刚好会而已
2016-04-11 回复 有任何疑惑可以回复我~
查看1条回复

int sum2=sum1+=one;这是简写.

意思是int sum2=sum1=sum1+one;

sum1+one的值赋给sum1,sum1的值赋给sum2;

之前 int sum1=one+two;sum1为30;

所以sum2为40.

1 回复 有任何疑惑可以回复我~
#1

Hucsen 提问者

我输出的是 System.out.println(sum1);不是 System.out.println(sum2);……
2016-04-11 回复 有任何疑惑可以回复我~

你把one多加了一次

0 回复 有任何疑惑可以回复我~
#1

Hucsen 提问者

我是在sum2中sum1加了one。但输出的是println(sum1),又不是sum2。 难道说输出sum1还和 int sum2=sum1+=one; 这个有关?不是用;隔开了么? 能解释的详细点吗?
2016-04-11 回复 有任何疑惑可以回复我~

shabi

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165455    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

关于Java中的赋值运算符

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信