50条如果其他类型更合适,尽量避免使用字符串

(一)字符串不适合代替其他的值类型

如果数据本身是数值,就应该是int float或者BIgInteger之类的,如果是一个 是-或-否,这种问题,应该转化为 Boolean。

也就是说,如果存在适当的值类型,不管是基本类型还是其他对象引用,大多应该使用这种类型,如果不存在这样的类型,就应该编写这样的类型。

显然,抓数据的时候,不应该都是String。

(二)字符串不适合替代枚举类型

(三)字符串不适合替代聚集类型


String compoundKey = className + "#" + i.next();

显然缺点很多,用分隔符导致结果混乱,访问简单的域也要解析字符串,过程慢而且繁琐,容易出错,无法提供equals、toString或者compareTo方法,被迫接受String提供的行为,更好的做法是编写一个雷描述这个数据集,通常是一个私有的静态成员类。 22条中的内部类吧。

不过我们抓取数据还是需要自定义一种类型,提供toString方法即可了。


最后字符串也不适合代替能力表,比如字符串被用于某种功能进行授权访问。

如果两个用户提供的字符串一样不就不好了,所以最终使用泛型话比较,

举了ThreadLocal的例子,需要研究一下。




评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值