锁定老帖子 主题:实践中的重构11_茴香豆的多种写法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-12-18
pop1030123 写道 这个类还有什么用处?还可以用来在字符编码间转码吧?
算是一个简单的编码,和base64相似,但是没有base64紧凑。 |
|
返回顶楼 | |
发表时间:2010-12-18
三人行,必有吾师,总能在别人身上学到益处
|
|
返回顶楼 | |
发表时间:2010-12-18
本来就是一个茴字怎么写的,纯技术的讨论。
不过我补充一句:不管是可读性,和高性能都是有目的的,如果你所谓目的的前提不存在,所作的一切都是枉然。 就像我花5元要碗牛肉面,你给我满汉全席,我不会不好意思,但我不会多给你超过5元钱。 |
|
返回顶楼 | |
发表时间:2010-12-18
这个代码存在一个潜在的bug。
byte[] data = str.getBytes(); 这行代码。String的getBytes方法是和当前java程序的默认字符集相关的。 我想编码的东西最终还是要还原的,如果还原时的字符集和编码时的不同,则会产生乱码。 |
|
返回顶楼 | |
发表时间:2010-12-19
gdpglc 写道 这个代码存在一个潜在的bug。
byte[] data = str.getBytes(); 这行代码。String的getBytes方法是和当前java程序的默认字符集相关的。 我想编码的东西最终还是要还原的,如果还原时的字符集和编码时的不同,则会产生乱码。 没错,这个是一个潜在的bug,这个是在早期架构的时候,目光有局限性。 一直以来,所有部署的机器都是同一个默认字符集,所以用部署的方法弥补了这个问题。 系统中所有编码相关的地方基本上都有这个问题。 |
|
返回顶楼 | |
发表时间:2010-12-20
switch 这个方法用的实在是太丑陋了,换成一个hashmap,每次传进一个key取value多好啊
|
|
返回顶楼 | |
发表时间:2010-12-20
写的真是不错,这几天正好也需要用到。
|
|
返回顶楼 | |
发表时间:2010-12-20
peak 写道 switch 这个方法用的实在是太丑陋了,换成一个hashmap,每次传进一个key取value多好啊
hashMap性能不好。用hashMap还不如用switch |
|
返回顶楼 | |
发表时间:2010-12-24
gdpglc 写道 "0123456789ABCDEF".charAt(left)
地方还可以优化 char[] chs={'0','1'........'F'} chs[left] 不过我一定不会这么用。我宁可用Character.forDigit方法,这样的代码可读性太差了。这么在乎性能的理由是什么?你在写系统软件吗? 把乘2写成<<1,唉。我觉得真是精力过剩了.......... 这哪能叫重构.... 整个一个反重构 乘2写成<<1 其实我也经常这样写,如果追求性能的话呵呵,但是就是可读性差很多,可能需要注释下 |
|
返回顶楼 | |
发表时间:2010-12-28
用hashmap代替数组,无论是代码可读性还是效率都比数组高
|
|
返回顶楼 | |