大家帮忙看看这两段java代码 顺便解释下 感激不尽!

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:50:21
public class Test{
public ststic void main (String[] args)}
int x,y;
x= (int) 56.3;
y= (int) 'A';
System.out.print(x)
System.out.print(''\t'' +y);
}
}
输出结果为什么是56 65啊?

public class Test{
public ststic void main (String[] args)}
int x=5;
int m=0;
x+=x+++(x+++m)
Syetem.out.println(x);
}
}
这段代码执行后,变量x的值为什么啊?

第二个用户回答的很好。
不过你的代码有严重的书写错误
第二题的static就写成了ststic
还有句子结尾习惯性的不写“;”
这个不行啊
学习java不仅要努力
也要认真、仔细

1.56.3强行转整,将小数部分舍弃,变成 56
字符A转整型,结果为‘A’的ASC码是65

2. 16.
补充16的由来!
优先顺序我用括号了
x+=(x++) + ((x++)+m);
等价于
x = x+ (x++) + ((x++)+m);
----1--- 2 ------ 3
在1处, x=5,
2处, x=6 但 x++ = 5
3处 x=7 但 x++ = 6

所以结果是 5 + 5 + 6
我编译了~
结果肯定是16了~~刚才整错了……嘿嘿,这个应该对了

第一个是对的,第二个应该是x=x +(x++)+(x++ + 0))
=5 +(6) +(6)

=17

我说哥们,你这也太粗心了吧
就你这原题上去运行,就有N个错误,我是说2题.
解释上面已经完全给出了,一点不差
顶你,楼上的