Java 优化 - List 代替 Vector

来自牛奶河Wiki
阿奔讨论 | 贡献2024年3月15日 (五) 11:25的版本 (创建页面,内容为“Vector 是线程同步的,所以它也是线程安全的,而 Arraylist 是线程异步的,是不安全的。 如果不考虑到线程的安全因素,一般用 Arraylist 效率比较高。 # 使用 ArrayList 代替 Vector,提供了更好的性能,Vector 是较旧且效率较低的方法 # 空值返回采用更稳妥的 Collections.emptyList 方式 修改后,代码效率提升 20% 以上。 private static final Vector<String> splitString(String…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

Vector 是线程同步的,所以它也是线程安全的,而 Arraylist 是线程异步的,是不安全的。 如果不考虑到线程的安全因素,一般用 Arraylist 效率比较高。

  1. 使用 ArrayList 代替 Vector,提供了更好的性能,Vector 是较旧且效率较低的方法
  2. 空值返回采用更稳妥的 Collections.emptyList 方式

修改后,代码效率提升 20% 以上。

private static final Vector<String> splitString(String src) {
    Vector<String> spliter = new Vector<>();
    if (src == null) {
        return spliter;
    }
    ...
}
private static final List<String> splitString(String src) {
    if (src==null||(src.equals(""))) {
        return Collections.emptyList();
    }
    List<String> spliter = new ArrayList<>();
    ...
}