Collection集合使用场景

本文深入探讨了Java集合框架中的List、Set接口及其常见实现类如ArrayList、LinkedList、HashSet和TreeSet。针对不同场景,解释了它们的性能特点和适用情况,包括增删改查的效率、线程安全性以及元素排序的需求。同时提到了LinkedHashSet在保持插入顺序和去重方面的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果是需要可以存放重复的元素,用List接口下的实现类

  • ArrayList:如果是查改多,用ArrayList
  • LinkedList:如果是增删插多,用LinkedList
  • Vector:如果是有线程安全要求用Vector

如果是不能存放重复的元素,用Set接口下的实现类

  • HashSet:如果没有任何排序要求,用HashSet,因为效率高

  • TreeSet: 如果有排序要求用TreeSet,

  •  		如果是自然排序,需要元素实现Comparable接口,重写compareTo方法
     		如果是定制排序,需要创建TreeSet对象的时候,传入一个Comparetor接口实现类对象,重写compare方法
     		一般是默认排序用自然排序,特殊排序用定制排序
     		
     	LinkedHashSet:如果需要元素不重复,并且,有存入和取出顺序要求用LinkedHashSet
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

༄༊心灵骇客༣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值