scjp中的一个题目 int i=0;int c =3;int a[] = new int[5];a[i]=i=c;求a[5],i,的值;为什么a[0]会等于3呀!而不是a[3]呀! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 虽然说赋值语句的执行过程是从右向左,但是a[i]中对于i的评价优先于赋值语句,所以i=0首先被a[i]看到代入,然后再执行i=c,c的值被代入到i中...一般来说死记住这个题型就好了... 执行到这句时,从左到右遇到a[i],将i=0,赋给就是a[0],继续往后扫描,遇到赋值号"=",对于赋值的执行顺序是自右向左,先执行最右的赋值将3赋给i,这个语句完了就是a[0]=3; 如果你懂得什么叫Eval and Apply就好了。不过可以这样理解,从左往右Eval每个变量,从右往左Apply每个付值。所以呢:Eval:a[i] ==> a[0];//0i ==> i; //0c ==> c; //3Apply:i = 3;a[0] = 3; 12月中旬 好找工作吗? swing线程问题 这是什么语言写的。谢谢。散粉。 基于HTTP协议的文件传输,续!续!续! 带有以下格式程序导入后怎么将其在Eclipse运行? 求一个概率算法,给出算法者立即给分。 容器和组件的间距问题 小程序请教 救急:我用的是JDBC2,但无法实现滚动或更新光标的请求? 5个小问题,每一个10分相赠! 线程间管道通信 求小数精确计算的方法(急急急)
a[i] ==> a[0];//0
i ==> i; //0
c ==> c; //3Apply:
i = 3;
a[0] = 3;