Redian新闻
>
两个很基本的JAVA问题
avatar
两个很基本的JAVA问题# Java - 爪哇娇娃
t*l
1
正在准备SCJP 看见2个这样的问题
1.请问在JAVA里可以直接PRINT出二进制数么?
比如想知道: -64>>2 最后结果用二进制如何表示的
可以通过System.out.println 或者类似的语句输出二进制数么?
2. Evaluation Order
比如有这么一段程序:
class orderTest
{
public static void main(String[] args)
{
int[] a = {4,4};
int b = 1;
a[b]=b=0;
System.out.println("a["+b+"] is " + a[b]);
System.out.println("b is "+b);
}
}
最后运行结果是:
a[0] is 4
b is 0
请问Evaluation order到底是怎么样子的,最后为什么会得出这样的结果呢?
Thanks..
avatar
M*s
2
a[b]=b=0
是从右向左执行的
所以是这样的结果
这是因为=operator是右结合的

【在 t******l 的大作中提到】
: 正在准备SCJP 看见2个这样的问题
: 1.请问在JAVA里可以直接PRINT出二进制数么?
: 比如想知道: -64>>2 最后结果用二进制如何表示的
: 可以通过System.out.println 或者类似的语句输出二进制数么?
: 2. Evaluation Order
: 比如有这么一段程序:
: class orderTest
: {
: public static void main(String[] args)
: {

avatar
F*n
3
1. Use Integer.toBinaryString()
2. priority of [ ] is higher than =, so it is a[1] that is 0.



【在 t******l 的大作中提到】
: 正在准备SCJP 看见2个这样的问题
: 1.请问在JAVA里可以直接PRINT出二进制数么?
: 比如想知道: -64>>2 最后结果用二进制如何表示的
: 可以通过System.out.println 或者类似的语句输出二进制数么?
: 2. Evaluation Order
: 比如有这么一段程序:
: class orderTest
: {
: public static void main(String[] args)
: {

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。