java中关于int b = (a*2)/2;的问题

publicclasszz1{publicstaticvoidmain(String[]args){inta=3;intb=(a*2)/2;System.out.prin... public class zz1
{public static void main(String[] args)
{int a = 3;
int b = (a*2)/2;
System.out.println(a);
System.out.println(b);}
int b = (a*2)/2;我是想把a*2的值赋给b后再将此时a的值除以2;可是显示a的值还是6,这是何解?如果我要把a*2的值赋给b后再将a*2的值再除以2之后再打出a当前的结果,要如何打代码?
展开
 我来答
cherryvenus
2012-08-09
知道答主
回答量:21
采纳率:0%
帮助的人:9.5万
展开全部
你这个程序的结果是a=3;b=3;
理由是(a*2)/2这是一个计算式,所以是一起算完后再将值赋给b的,如果按照你的想法想:把a*2的值赋给b后再将a*2的值再除以2之后再打出a当前的结果
而且此时如果a/2他就不再是个整形int变量而是float变量,你还需强制装换a成float变量
我的解答方案有一下两个
第一个:
public class zz1
{public static void main(String[] args)
{int a = 3;
int b = a*2;
float c=(float)a/2;//强制转换a,并把值赋给c
System.out.println(c);
System.out.println(b);}
}
第二种
public class Compare
{public static void main(String[] args)
{int a = 3;
int b = a*2;
System.out.println((float)a/2);//直接在println中计算
System.out.println(b);}
}

你可以试下~
chengwei1104
2012-08-09 · TA获得超过619个赞
知道小有建树答主
回答量:558
采纳率:0%
帮助的人:372万
展开全部
a就是6啊
如果我要把a*2的值赋给b后再将a*2的值再除以2之后再打出a当前的结果:a=6

a至始至终都没有重新赋新值,肯定是不会变的了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Leo分享
2012-08-09 · TA获得超过754个赞
知道小有建树答主
回答量:1405
采纳率:0%
帮助的人:766万
展开全部
显示a的值还是6 //我这里运行a是3 b也是3

你的意思是不是
int a = 3;
int b = a*2;
System.out.println(a);
System.out.println(b);
此时a为3 b为6
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
code游鱼
2012-08-09 · 超过10用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:24.5万
展开全部
你上边这么写输出的都是3,想让b=6,a=1.5的话写
int b=a*2;
a=a/2;
想让a保持不变的话只写
int b=a*2
就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dolphin061888
2012-08-09 · 超过21用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:27万
展开全部
你这a怎么可能会是6啊,给a赋值3之后没有再赋值啊,a还是3才对
你的意思把a*2值赋给b,那是b就是6,值再除以2,跟a有什么关系啊,a还是3啊
不知道你想干什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式