集合框架(更新中)

先写写目录

 了解更多JAVA后台知识整理:JAVA后台系列目录

本文为转载整理

       文章出处:https://thinkwon.blog.csdn.net/article/details/98844796

Collection集合主要有List和Set两大接口

       List:有序(元素存入集合的顺序和取出的顺序一致),元素都有索引。元素可以重复。

       Set:无序(存入和取出顺序有可能不一致),不可以存储重复元素。必须保证元素唯一性。


 

List    

        主要实现:ArrayList, LinkedList, Vector

        常规的方法增、删、改、查、判断

      

       对于集合如果想正确的循环遍历删除(增加)元素,需要用迭代器遍历删除(增加)的方法。

     ArrayList

           源码解析地址:https://thinkwon.blog.csdn.net/article/details/98845119

     LinkedList

           源码解析地址:https://thinkwon.blog.csdn.net/article/details/102573923

     Vector

Set

         Set集合元素无序(存入和取出的顺序不一定一致),并且没有重复对象。
         Set的主要实现类:HashSet, TreeSet。

        

           hashSet是先通过hashCode判断值是否相同,相同情况,然后通过equals判断是否真的相同,相同则不进行加入

     HashSet

          

     TreeSet

           

Map

   常用实现类:HashMap、TreeMap、HashTable、LinkedHashMap、ConcurrentHashMap

HashTable:线程安全但是效率低,因此引入ConcurrentHashMap,主要还是分段式锁的问题
LinkedHashMap:使用双向链表来维护元素的顺序,顺序为插入顺序或者最近最少使用(LRU)顺序。

    HashMap

           源码解析文章:https://thinkwon.blog.csdn.net/article/details/98845487

            

    TreeMap

         源码解析地址:https://thinkwon.blog.csdn.net/article/details/102571883

 LinkedHashMap

         源码解析地址:https://thinkwon.blog.csdn.net/article/details/102573923

Collections

      Collections:集合工具类,方便对集合的操作。这个类不需要创建对象,内部提供的都是静态方法。

 Arrays

      用于操作数组对象的工具类,里面都是静态方法。数组 -> 集合:asList方法,将数组转换成list集合。

      asList转换得到的ArrayList不是java.util.ArrayList,因此不存在add等方法的

 

了解更多JAVA后台知识整理:JAVA后台系列目录

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
sqltoy-orm是比hibernate+myBatis更加贴合项目的orm框架,具有hibernate增删改的便捷性同时也具有比myBatis更加灵活优雅的自定义sql查询功能。 sqltoy-orm支持以下数据库: oracle 从oracle11g到19c db2 9.5+,建议从10.5 开始 mysql 支持5.6、5.7、8.0 版本 postgresql 支持9.5 以及以上版本 sqlserver 支持2008到2019版本,建议使用2012或以上版本 sqlite sybase_iq 支持15.4以上版本,建议使用16版本 elasticsearch 只支持查询,版本支持5.7+版本,建议使用7.3以上版本 clickhouse mongodb (只支持查询) sqltoy-orm特性: 1、根本上杜绝了sql注入问题,sql支持写注释、sql文件动态更新检测,开发时sql变更会自动重载。 2、最直观的sql编写模式,当查询条件稍微复杂一点的时候就会体现价值,后期变更维护的时候尤为凸显。 3、极为强大的缓存翻译查询:巧妙的结合缓存减少查询语句表关联,极大简化sql和提升性能。 4、最强大的分页查询:很多人第一次了解到何为快速分页、分页优化这种极为巧妙的处理,还有在count语句上的极度优化。 5、跨数据库函数方言替换,如:isnull/ifnull/nvl、substr/substring 等不同数据库。 sqltoy-orm特点: 1、最优雅直观的sql编写模式 2、天然防止sql注入,执行过程 3、最强大的分页查询 4、最巧妙的缓存应用,将多表关联查询尽量变成单表 5、跨数据库 6、提供行列转换(数据旋转),避免写复杂的sql或存储过程,用算法来化解对sql的高要求,同时实现数据库无关(不管是mysql还是sqlserver) 7、提供分组汇总求平均算法(用算法代替sql避免跨数据库语法不一致) 8、分库分表 9、五种非数据库相关主键生成策略 10、elastic原生查询支持 11、elasticsearch-sql 插件模式sql模式支持     sqltoy-orm框架系统 更新日志: v4.18.22 1、在findEntityEntityQuery可以设置fetchSize 2、在sqltoyContext可以全局设置fetchSize,例如 spring.sqltoy.fetchSize=200 3、convertType 支持空集合返回空集合 4、针对一些特殊原因导致表名是数据库关键词的处理支持

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值