字符串本身是用来做文本的,很多时候的资料也是只需要支持save和load就好,同时,String本身和其他一些对象也支持字符串和其他类型互相转换。也因此人们在编程时会更倾向于用字符串,即使有时候不适用字符串。
字符串不适合代替其他值类型。这个问题在前后端交互的时候经常会在考虑日期用Date接收还是用String接受,如果存下来的数据是布尔类型则boolean更适合。这一点在我们的系统里其实还好,前台使用控件本身就是一种校验,对于freeinput的部分则需要小心String和其他类型互相转换是会出现的NPE,不符合格式等问题。
字符串不适合代替枚举类型。这一点很明确,枚举类的好处是字符串没法比的。
字符串不适合代替聚合类型。书中的例子让我想到我们使用@@和—组合分割一些数据,这一部分数据更重要的时候约定好格式,这样反而用字符串更加方便。反之,还是使用keyValuePair更好。