栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【java集合】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【java集合】

集合

ArrayListlinkedList

ArrayList

底层是数组,可以动态扩容的数组,初试容量是10,扩容因子1.5,每次扩容1.5倍,线程不安全
Java面试之ArrayList为什么线程不安全?
Vector:Vector与ArrayList一样,也是通过数组实现的,不同的是它支持线程的同步,即某一时刻只有一个线程能够写Vector,避免多线程同时写而引起的不一致性,但实现同步需要很高的花费,因此,访问它比访问ArrayList慢

使ArrayList线程安全
方法:
	List list = new ArrayList<>(2);
	List list1 = Collections.synchronizedList(list);
	ArrayList包装成线程安全的List后,和Vector的性能差不多

面试题:

public static void main(String[] args) {
    Integer[] array = {1,2};
    List integerList = Arrays.asList(array);
    Object[] objectArray = integerList.toArray();
    System.out.println(objectArray.getClass()==Object[].class); //false
    System.out.println(objectArray.getClass()); //class [Ljava.lang.Integer;
    System.out.println(Object[].class); //class [Ljava.lang.Object;

    List list = new ArrayList<>();
    System.out.println(list.toArray().getClass()==Object[].class);//true

    List list2 = new ArrayList();
    System.out.println(list.getClass()==list2.getClass());//true
}
linkedList

底层是双向链表

Java集合linkedList用法总结

数据结构与算法

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/716001.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号