集团主站
欢迎来到成都达内官方网站!达内—美国上市公司 亿元级外企IT培训企业!
成都it培训哪家好
成都it培训哪家好
全国服务监督电话:15023458194  |   联系客服   |
当前位置:主页 > 培训课程 > Java >

JAVA高薪秘籍:Java集合梳理及案例解析

发布者: 成都达内培训     浏览次数:     发布时间:2018-07-31 10:08:09

相信对于Java的集合,成都Java培训的小伙伴们并不陌生,成都达内的小编整理了Java集合的知识点梳理和对应的案例解析,让我们一起来看看吧!...

  相信对于Java的集合,成都Java培训的小伙伴们并不陌生,成都达内的小编整理了Java集合的知识点梳理和对应的案例解析,让我们一起来看看吧!

  想了解成都Java薪资待遇?成都Java工程师前景?成都java培训机构排名?想知道成都java工程师培训哪家好?成为成都java程序员有哪些难点?关注成都达内Java培训机构cd.java.tedu.cn,你想了解的,就是我们所推送的!


  1、定义:Java集合类存放于java.util包,是存放对象的容器,长度可变,只能存放对象,可以存放不同的数据类型;

  2、常用集合接口:

  a、Collection接口:最基本的集合接口,存储不唯一,无序的对象,List接口和Set接口的父接口;

  b、List接口:一个有序、可以重复的集合,常用实现类ArrayList和LinkedList;

  1 // 底层数据结构是数组,查询快,增删慢,线程不安全,效率高

  2 List arrayList = new ArrayList();

  3 // 底层数据结构是数组,查询快,增删慢,线程安全,效率低,耗性能

  4 List vector = new Vector();

  5 // 底层数据结构是链表,查询慢,增删快,线程不安全,效率高

  6 List linkedList = new LinkedList();

  c、Set接口:一个无序、不可重复的集合,常用实现类HashSet、LinkedHashSet、TreeSet;

  1 // 元素无序,不可重复,线程不安全,集合元素可以为 NULL

  2 Set hashSet = new HashSet();

  3 // 底层采用链表和哈希表的算法,保证元素有序,唯一性(即不可以重复,有序),线程不安全

  4 Set linkedHashSet = new LinkedHashSet();

  5 // 成都Java培训机构:底层使用红黑树算法,擅长于范围查询,元素有序,不可重复,线程不安全

  6 Set treeSet = new TreeSet();

  d、Map接口:key-value的键值对,key不允许重复,value可以,key-value通过映射关系关联,常用实现类HashMap和TreeMap;

  1 // 采用哈希表算法,key无序且不允许重复,key判断重复的标准是:key1和key2是否equals为true,并且hashCode相等

  2 Map hashMap = new HashMap();

  3 // 采用红黑树算法,key有序且不允许重复,key判断重复的标准是:compareTo或compare返回值是否为0

  4 Map treeMap = new TreeMap();

  3、Set和List的区别:

  a、Set实例存储是无序的,不重复的数据;List实例存储的是有序的,可以重复的元素;

  b、Set检索效率低下,删除和插入效率高,删除和插入不会引起元素位置改变;

  c、成都Java培训班:List可以根据存储的数据长度自动增长List长度,查找元素效率高,插入删除效率低,插入和删除时会引起其他元素位置改变;

  4、Map和Set的关系:

  a、HashMap、HashSet 都采哈希表算法,TreeMap、TreeSet 都采用红黑树算法、LinkedHashMap、LinkedHashSet 都采用哈希表算法和红黑树算法;

  b、分析Set的底层源码,Set 集合就是由Map集合的Key组成;

  5、集合遍历:

  1 // 遍历List

  2 List lst = new ArrayList();

  3 lst.add("apple");

  4 lst.add("banana");

  5 // 第一种

  6 for(int i = 0; i < lst.size(); i++){

  7 System.out.println(lst.get(i));

  8 }

  9 // 第二种

  10 for(String str : lst){

  11 System.out.println(str);

  12 }

  13 // 第三种 迭代器

  14 Iterator it = lst.iterator();

  15 while(it.hasNext()){

  16 System.out.println(it.next());

  17 }

  18

  19 // 遍历Map

  20 Map map = new HashMap();

  21 map.put("apple", "苹果");

  22 map.put("banana", "香蕉");

  23 // 第一种

  24 for(String key : map.keySet()){

  25 System.out.println(key + "——" + map.get(key));

  26 }

  27 // 第二种 推荐使用尤其是数据量大时

  28 for(Entry entry : map.entrySet()){

  29 System.out.println(entry.getKey() + "——" + entry.getValue());

  30 }

  31 // 第三种 迭代器

  32 Iterator> iterator = map.entrySet().iterator();

  33 while(iterator.hasNext()){

  34 Entry entry = iterator.next();

  35 System.out.println(entry.getKey() + "——" + entry.getValue());

  36 }

  37 // 第四种 无法取到key值

  38 for(String val : map.values()){

  39 System.out.println(val);

  40 }

  本月成都java培训免费训练营预约开始啦,专为零基础打造,学Java来成都java培训机构——成都达内。页面留言姓名+电话+课程方向,领取达内成都java培训班免费训练营名额,高薪技术,一线名师,名企就业,只要你想学,这些统统都为你备好!

  【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!

(责任编辑:霍老师)
最新开班
  • 成都Java培训班
    免费试听名额发放中...
  • 成都C++培训班
    免费试听名额发放中...
  • 成都PHP培训班
    免费试听名额发放中...
  • 成都网络工程培训班
    免费试听名额发放中...
  • 成都Unity3D培训班
    免费试听名额发放中...
  • 成都大数据培训班
    免费试听名额发放中...
  • 成都uid培训班
    免费试听名额发放中...
  • 成都会计培训班
    免费试听名额发放中...
  • 成都Python培训班
    免费试听名额发放中...
  • 成都嵌入式培训班
    免费试听名额发放中...
  • 成都web培训班
    免费试听名额发放中...
  • 成都软件测试培训班
    免费试听名额发放中...
在线留言
提交

校区地址:绵阳市涪城区临园路东段68号富临大都会7栋3单元9层12号

联系电话:15023458194

公交路线:富乐路口凯德广场(10路;29路;3路;15路;11路;15a路;71路)

校区地址:成都市锦江区东大街紫东楼端35号明宇金融广场19楼1906室

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市高新区奥克斯广场蜀锦路209号一楼商铺

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都锦江区东大街芷泉街229号东方广场C座3楼303

联系电话:15023458194

公交路线:芷泉街(188路;115路;515路;236路;505路;501路;84路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市武侯区佳灵路3号红牌楼广场2号写字楼11楼1115号

联系电话:15023458194

公交路线:红牌楼东(11路;92路;100路;111路;139路;g28路;快速公交K1/K2) 地铁路线:红牌楼站(地铁3号线)

校区地址:成都市锦江区红星路二段70号四川日报大厦502-2

联系电话:15023458194

公交路线:市二医院站(6路;49路;102路;5路;37路;g92路;) 地铁路线:地铁市二医院(地铁3号线)

校区地址:成都市锦江区东大街紫东段35号明宇广场2306

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:四川省成都市武侯区高新科技孵化园9号园区E座7楼

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都市人民南路一段86号“城市之心”大厦26楼

联系电话:15023458194

公交路线:成都市人民南路(6路;14路;42路;72路;76路;1010路;)

校区地址:成都市高新区奥克斯广场B座1708

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

了解达内动态
关注成都达内教育公众号

首页 | 关于达内 | 课程中心 | 专家师资 | 视频教程 | 学员空间 | 校企合作 | 新闻资讯 | 就业指导 | 网站地图

2016-2025 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56