java代码 求围棋高手对决讲解视频给讲解一下

50分请高手帮忙解释下下面这段java代码由于没有学过JAVA,拿到这段代码非常郁闷,看不懂,s 是一个16进制数字“2020661a”代码如下:s=s.toUpperCase(); // 这应该是转大写吧?char[] astore7 = s.toCharArray(); int istore6 = s.length(); // =8?int istore5 = 0; for(int i = 0; i < istore6; i++) { int istore3 = astore7[i]; istore5 += istore3; } istore5 = ((istore5 & 65535) * 78) + 2199; 请通晓的高手按照每一行的结果、运算进行解释,特别是for循环中每一步是多少,最后的&运算的详细说明,以及最后的结果.分数不多,
飞哥刷Rd1Up9
s=s.toUpperCase(); // 将字符串s中的所有字符转换成大写char[] astore7 = s.toCharArray();//将字符串s拆成字符数组;等同{'2','0','2','0','6','6','1','A'}int istore6 = s.length(); // 获取astore7字符数组的长度;刚好是8个int istore5 = 0; //定义一个变量istore5,初始值为0for(int i = 0; i < istore6; i++) //循环;从0开始;循环8次;i的值依次为0,1,2...7{//char类型转为int类型时;0——>48 1——>49 2——>50int istore3 = astore7[i]; //定义一个变量istore3 让它的值为字符数组中的每一个;//如i=0时;就是2转为int为50,等于i=1时就是0;转为int就是48...istore5 += istore3; //将istore5的值加上istore3,如第一次是0,加上istore3后就是50了;//然后下一次循环再加的话就是加48了.这句话可以看成istore5 = istore5 + istore3}//& 是为与;将2个值转化成二进制的值再做位计算;//这里循环完毕之后istore5的结果是418;转化成二进制为//而65535转换成二进制为:1111 与它做位运算时结果还是418.//可以得出的结论是任何比65535小的数与65535做位运算结果还是原来的值istore5 = ((istore5 & 65535) * 78) + 2199;//然后将418乘以78等于32604再加2199结果就是34803
为您推荐:
扫描下载二维码Java开发推荐图书
作者:刘中兵Java研究室
本书详细讲解Java语言基础开发中的各种技术,主要内容包括:Java开发入门;Java语法基础;Java核心编程;Java图形编程;Java网络编程;Java高级特性。
作者:刘中兵Java研究室
本书详细讲解Java Web信息系统开发中的各种技术,主要包括如下内容:网页开发技术;Java与数据库开发技术;Java
Web核心开发技术;JSF页面组件技术。
作者:刘中兵Java研究室
本书首先分析了Java Web应用的分层设计方法,并进行应用框架的选型,然后讲解各种Java
Web应用框架、集成技术、实战开发。
作者:刘中兵Java研究室
本书包括企业级的开发技术EJB、各种Java EE的分布式开发技术、Java
Web的各种开源技术与框架,这3部分内容层层递进,涵盖了Java EE开发中的各种分布式与业务核心技术。
Java相关图书推荐
????????????????
&& && && &&
(点击刷新验证码)
51CTO旗下网站}

我要回帖

更多关于 java消息队列代码讲解 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信