求解<<>>解解什么动物说明

读&&Java解惑&&后的碎嘴子(第一章) - MarilynTyson的专栏 - CSDN博客
读&&Java解惑&&后的碎嘴子(第一章)
第一章--表达式问题
1.当取余(%)操作结果不为0时,余数的符号和左边操作数相同,如1%2=1,-1%2=-1
总结:将取余操作用来作判断分支条件时,尽量用0值来作参照
2.需要精确结果时,避免使用float和double计算,尤其是货币计算,要使用int,long来以整数的形式计算,System.out.printf(String,Object)并不是最好的解决方案,也可以用BigDecimal,但是构造方法的参数,一定要选用字符串,
如new BigDecimal("2.20"),而不是new BigDecimal(2.20)
总结:二进制浮点数不能精确表示10的任何次负幂
3.long micro = 24 * 60 * 60 * 1000 * 1000;结果竟然是,尽管认为long型可以正常装下计算结果,但是算式每个元素默认都会是int,结果也会以int的容量来计算,解决方法只需要把任何一个元素强制声明为long型即可得
到正确结果,如:
long micro = 24L * 60 * 60 * 1000 * 1000;

long micro = 24 * 60L * 60 * 1000 * 1000;总结:就算结果类型是long,不能保证计算过程中不溢出
4.这个没什么意思,主要是数字1和字母l不要搞混淆
总结:该不用l就不用,该大写L就大写L
5.System.out.println(Long.toHexString(0xL + 0xcafebabe));结果是cafebabe,少了个开头的1,因为在非十进制里,表示负数无需加负号(-),0xcafebabe是int型并且最高位有值,因为它其实是个负数,在与
0xL相加时被自动扩展成long型0xffffffffcafebabeL,解决方法为0xcafebabe改为0xcafebabeL,保证最高位是0,这样它就不是一个负数了
总结:在操作非十进制时,要注意其真正的正负,同时最好让他们初始有相同的类型而不是使其自动扩展
6.System.out.println((int)(char)(byte)-1);结果是65535,为什么不是-1?原因来一步一步看,开始-1自动是int型,用二进制表示是32个1,被砍成8位的byte变成了,这是没有问题的,因为int和byte是有符号类型的,存在
正负,而char却不存在负数的问题,将8位byte转换为16位的无符号char类型,实质先把byte转回了int,其实(int)(char)(byte)-1和(int)(char)-1是等同的,不存在有符号8位(byte)变无符号16位(char)的情况,而是int转byte一样,
直接砍去16位,结果自然是16个1,又因为char无符号,最高位代表真正的值,16个1自然是65535
总结:强制转换要考虑到类型本质有无符号的问题,其实可以看作算是第5条的一个扩展
7.异或交换法,一些装13的面试题里遇到过(如怎么用一条语句交换两个变量的值,或交换两个变量的值有几种方法),这样的花活实在是没什么意思
总结:有兴趣可以看看具体内容,看看bloch大师的推理
8.char x = 'X';
int i = 0;
System.out.println(false ? i : x);
& 结果是88而不是X,其中过程比较复杂,简单的说因三目运算符的自有特性,当第二三操作数的类型不同,返回的类型也不同(这里明显地把char提升为int了)
总结:用三目运算符时,最好保证两个返回值类型一致
9.short x = 0;
System.out.println(x+=123456);
& 结果是-7616,根据上面的经验,这个一点都不难理解了
总结:byte,short,char这样的类型,参与+=这样的复合运算要注意自动转型
10.Object obj = "a";
String str = "b";
obj+=
&& 编译器不通过,而obj = obj +这和+=这样的复合赋值自身特性有关
总结:类型不一样,还是少用复合赋值符号
我的热门文章&>&&>&&&云在飞&&
广场舞蹈名称:
发布于 栏目:舞友原创广场舞 舞蹈类型:欣赏
看过&&云在飞&&的朋友,还喜欢看
最火的舞友原创广场舞视频
看过了&&云在飞&&说说你的看法把
&&云在飞&&, 更多优秀广场舞视频及教学,请关注本站《舞友广场舞》!孔夫子旧书网该图书“简帛&&五行经&>释解”已经找不到了, 为您推荐一些相同图书。装订:平装开本:版次:一版一印20.00十品装订:平装开本:版次:118.00九品装订:平装开本:版次:26.00十品装订:平装开本:版次:131.79十品装订:平装开本:版次:127.00十品装订:其它开本:版次:133.00十品装订:其它开本:版次:133.00十品装订:平装开本:版次:125.00十品装订:其它开本:版次:143.00十品Copyright(C)
孔夫子旧书网
京ICP证041501号
海淀分局备案编号UDN-企业互联网技术人气社区
后使用快捷导航没有帐号?
浏览&&:&1335
回复&&:&5
回复的帖子
[i]checked /&${I18n.getMessage(&User.yes&)}
& & & & & & & & & & & & & & & & & & & & [i]checked /&${I18n.getMessage(&User.no&)}
回复的帖子
两种方法 ,
1.用符号代替,&是gt、 &=是gte,y)&
回复的帖子
运行时出错没?
还是只是编辑器报错?
回复的帖子
运行时没错&&编辑器报错
回复的帖子
引用 3 楼 z 的回复:运行时没错&&编辑器报错
运行时没错就说明Freemarker语法没问题,编辑器报错那是编辑器不支持,你用的是JSP的编辑器吧,好像 Freemarker没有专门的编辑器
回复的帖子
JSP的编辑器也报错
电话:010-
地址:北京市海淀区北清路68号
移动客户端下载
微信公众号:yonyouudn
扫描右侧二维码关注我们
专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041
京公网网备安4
Powered by Discuz!

我要回帖

更多关于 路亚gt结图解 的文章

 

随机推荐