Java 优化 - List 代替 Vector
跳到导航
跳到搜索
如果不考虑到线程的安全因素,一般用 Arraylist 效率比较高。
- Vector 是线程同步的,所以它也是线程安全的,而 Arraylist 是线程异步的,是不安全的
- Vector 在长度不够用时在原来的基础上扩展 100%,ArrayList 扩展 50%
private static final Vector<String> splitString(String src) { Vector<String> spliter = new Vector<>(); if (src == null) { return spliter; } ... }
- 使用 ArrayList 代替 Vector,提供了更好的性能,Vector 是较旧且效率较低的方法
- 空值返回采用更稳妥的 Collections.emptyList 方式
修改后,代码效率提升 20% 以上。
private static final List<String> splitString(String src) { if (src==null||(src.equals(""))) { return Collections.emptyList(); } List<String> spliter = new ArrayList<>(); ... }