黑马程序员——java集合框架(Map和工具类)

1.Map体系下有三个子类:

HashMap
    底层是哈希表数据结构,可以存入null键和null值,不同步
---TreeMap
    底层是二叉树数据结构,线程同步,可以用于给map集合中的键进行排序

和Set很像,Set底层是Map
  
添加元素时,如果出现相同键,那么厚添加的值会覆盖原有键对应的值,并且put方法会返回被覆盖的值

2.map集合的两种取出方式:
  (1) keySet():将map中所有的键存入到Set集合,因为set具备迭代器
                 可以以迭代方式取出所有的键,再根据get()方法获得每一个键对应的值
       Map集合的取出原理:将map转化为set,再通过迭代取出
  (2)EntryMap():返回Map的关系映射  Set<Map.Entry<K,V>>

Map.Entry其实是一个接口,他是Map接口中的一个内部接口

3.两个集合工具类:Collections,Arrays

(1)Arrays工具类的asList()方法
asList:将数组转化为List集合,可以使用集合的思想和方法操作数组中的元素

注意:将数组转变为集合,不可以使用集合的曾珊方法,因为数组的长度是固定的
      
     如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转化为集合中的元素
     如果数组中的元素搜之基本数据类型,那么会将该数组作为集合中的元素存在

(2)集合转化为数组
   指定类型的数组待敌要定义多长呢?
     当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组,长度为集合的size
     当指定类型的数组长度大雨了集合的size,就不会新创建数组,而是使用传递进来的数组
     所以创建一个刚刚好的数组最优

时间: 2024-10-25 00:43:03

黑马程序员——java集合框架(Map和工具类)的相关文章

黑马程序员---Java集合框架

---------------------- Android开发.java培训.期待与您交流! ---------------------- Java集合框架 集合我们都知道是用来储存对象的容器,那之前的数组不也可以储存对象么,为什么要出现集合呢? 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,然而集合类中提供很多方便操作对象存储的方法,要比数组更容易操作对象,而且集合的长度是可变的,然而数组长度确实固定不变的,这样不利于对对象的间隔储存.  数组和集

黑马程序员——JAVA集合框架学习总结

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- www.itheima.com 要学好java的集合框架,必须掌握此图: Java集合框架很全面,从大的来说.它包括两种类型: 1.一种是以collection为根接口的集合. 2.另一种是由map为根接口的<key,value>的“图”. 而collection之下的set接口和list接口又有不同: 1.Set 接口继承 Collection,但不允许重复,使用自己内部的一个排列机制.

黑马程序员------Java集合框架学习总结

Java培训.Android培训.iOS培训..Net培训.期待您的交流 一.综述 所有集合类都位于java.util包下.集合中只能保存对象(保存对象的引用变量).(数组既可以保存基本类型的数据也可以保存对象). Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些接口或实现类. 二.Collection接口 Collction: List:有序(元素存入集合的顺序和取出的顺序一致),元素都有索引.

黑马程序员——java集合框架之List,Set

集合框架  1.数组与集合的不同    数组长度是固定的,集合长度是可变的    数组中可以存储基本数据类型,集合只存储对象    集合可以存储不同类型的对象        2.java集合类中有两个顶层接口Collection和Map,下面是对Collection的一些总结: 集合中常用方法:     add方法的参数类型为Object,以便于接受任意类型的对象     集合中存储的都是对象的引用(或者说地址) 迭代器是集合取出元素的方式,此方法是定义在集合的内部,这样取出方式就可以直接访问集

黑马程序员——Java集合基础知识之Map

Map概念 要同时存储两个元素Key和Value,他们之间有映射关系,每个键不能重复,每个键只能映射到一个值. 当数据之间存在映射关系的时候,考虑使用Map集合. Map常用方法 如果添加的键原来有值,后添加的值会覆盖前面的值,并返回之前的值.put会返回来先添加的值,后添加的值会覆盖原有的值. Map tm =new TreeMap(); tm.put (key, value);//MAP没有add tm.remove (key) ;//去除一个key和对应的value,若不存在key返回nu

黑马程序员_Java集合框架

- - - - - android培训.java培训.期待与您交流! - - - - - - 集合框架:用于存储数据的容器. 特点: 对象封装数据,对象多了也需要存储.集合用于存储对象. 对象的个数确定可以使用数组.如果不确定可以用集合.因为集合是可变长度的. 集合和数组的区别: 数组是固定长度的:集合可变长度的. 数组可以存储基本数据类型,也可以存储引用数据类型:集合只能存储引用数据类型. 数组存储的元素必须是同一个数据类型:集合存储的对象可以是不同数据类型. 数据结构:就是容器中存储数据的方

黑马程序员——Java集合基础知识之Collection

集合基础知识--Collection Java中集合框架由常用的Collection接口和Map接口组成,而Collection接口又有两个子接口,是List接口和Set接口,常用的集合框架由这三个类组成. List接口的功能方法 List的使用最为简单,创建集合,通过add方法添加元素,get方法获取元素,通过迭代器获取元素.List接口存放的数据无序的,添加速度快,但是查询速度慢,因为查询的时候必须遍历,每次都重头开始,效率较低.常用实现类有ArrayList,LinkedList. Lis

黑马程序员——Java集合工具类和泛型

Collections工具类和泛型 Collections和Collection Collections和Collection是不同的,Collections是工具类,用来操作集合的,而Collection是集合接口.Collections中有一系列的静态方法用来操作集合,但是不能更改集合内容.比如不能set()不能remove()元素,可以替换全部元素或者添加同一个元素. static List<String> list =Arrays .asList("one Two three

黑马程序员__集合框架总结

------Java培训期待与您交流! ------- 前言: 本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档. 一.概述 数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法. 在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口