一、接口Map<K,V>
1.V put(K key, V value)
2.int size()
3.public class HashMap<K, V> implements Map<K, V>
按键的哈希值存储,put时,key相同会发生替换,一个key值只能对应一个value
4.Map的遍历
Map没有迭代器,通过keyset()和values()遍历
Set<K> keySet()
Collection<V> values()
//5.Set<Map.Entry<K,V>> entrySet()
public static interface Map.Entry<K,V>
6.V get(Object key)
7.LinkedHashMap
TreeMap

二、泛型
1.instanceOf
o instanceof Student
判断对象o是否属于Student类
2.泛型只能添加类类型,不能添加基本数据类型,但是基本数据类型会自动装箱拆箱
3.一个类可以有多个泛型
Map<String, Student>
List<List<Student>>
Map<String,List<Student>>

三、排序
1.Comparable<T>接口
一个类通过implements该接口,实现其 int compareTo(T o)方法,就可以定义该类的一种比较方法,返回一个int值
PS:这种排序实现把排序方法和类绑定,不如Comparator灵活
2.接口 Comparator<T>
int compare(T o1, T o2)
定义一个类,implements Comparator接口,实现compare方法,将这个类的对象传递给sort方法(如 Collections.sort 或 Arrays.sort),实现自定义排序规则,完成对List等的排序

四、Collections
1. java.util.Collections
2.Collections类中包含大量静态方法,实现对集合的多种操作
3.static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll)
Returns the maximum element of the given collection, according to the natural ordering of its elements.

五、集合相关
1.集合转数组
Collection接口中有toArray方法 <T> T[] toArray(T[] a)
具体的集合中都实现了该方法,可以直接将集合转为数组
2.数组转集合
没有现成方法,自己写
3.增强for遍历集合
可以使用for-each循环对集合进行遍历

Java学习日记 集合的更多相关文章

  1. java学习笔记—集合之Map集合

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 12.0px Times } p.p2 { margin: 0.0p ...

  2. Java学习:集合双列Map

    数据结构 数据结构: 数据结构_栈:先进后出 入口和出口在同一侧 数据结构_队列:先进先出 入口和出口在集合的两侧 数据结构_数组: 查询快:数组的地址是连续的,我们通过数组的首地址可以找到数组,通过 ...

  3. Java学习日记-10 集合

    集合(Collection) 1. 什么是集合? 集合是一组对象组成的一个整体,又称为容器,集合类属于java.util包.集合不同于数组的地方在于,一是它的容量是可变的,二是集合中只能存储对象,不能 ...

  4. Java学习日记-11 集合(1)

    Collection接口集合中存储的只是对象的引用,不是对象本身. 1.ArrayList<E>类1.1ArrayList和Collection的关系 public interface L ...

  5. Java学习日记基础篇(九) —— 集合框架,泛型,异常

    集合框架 有事我们会需要一个能够动态的调整大小的数组,比如说要添加新员工但是数组已经满了,并且数组的大小是在定义的时候定死的,所以我们就需要一个能够动态调整大小的数组或者用链表解决,而java中提供了 ...

  6. Java学习日记-12 集合(2)

    一.List<E>接口(超级接口Collection,List比Collection多重载了一些索引作为形参的方法)1.实现类ArrayList\LinkedListArrayList顺序 ...

  7. 0015 Java学习笔记-集合-TreeMap集合

    主要的方法 构造方法: TreeMap(); TreeMap(Comparator<?super K> comparator); TreeMap(Map<? extends K,? ...

  8. 0014 Java学习笔记-集合-HashMap集合

    主要的方法 + 构造方法: * HashMap(); - 默认大小16,负载因子0.75 * HashMap(int initialCapacity); * HashMap(int initialCa ...

  9. Java学习日记-2 零零碎碎

    一.使用Scanner类进行控制台的输入 文档中Scanner类的定义为A simple text scanner which can parse primitive types and string ...

随机推荐

  1. Web开发 < base target>

    target就是点击链接后跳转到的目标页.通俗点说,就是你当前页面上的链接<a>,也包括<img>.<link>.<form>,除非你指定了target ...

  2. 5阻止A默认行为和JS实现页面跳转的方法

    <!--HTML中阻止A标签的默认行为: href="javascript:;" href="javascript:void 0;"--><! ...

  3. this,super关键字的使用

    this关键字 1.this是对象的别名,是当前类的实例引用 2.在类的成员方法内部使用,代替当前类的实例.在Java中,本质上是指针,相当于C++中的指针概念.如果方法中的成员在调用前没有操作实例名 ...

  4. 虚拟器运行iOS8地图提示错误

    /SourceCache/ProtocolBuffer_Sim/ProtocolBuffer-225/Runtime/PBRequester.m:799 server (https://gsp13-c ...

  5. 重新开始学习javase_一切都是对象

    @学习thinking in java 一,一切都是对象 用句柄操纵对象 每种编程语言都有自己的数据处理方式.比如说c与c++中的指针,而java中尽管将一切都“看作”对象,但操纵的标识符实际是指向一 ...

  6. c#结构体和字节数组的转换、字节数组和stream的转换

    本文由博主(YinaPan)原创,转载请注明出处:http://www.cnblogs.com/YinaPan/p/streambytsstruct.html using System; using ...

  7. head First HTML与CSS读书笔记

    调整图片大小 有滚动条的图片可给不了好的用户体验,为了让图片的大小更适合浏览器窗口.这时候就需要对图片的大小进行调整看书之前.我调整图片大小的方式是在<img>元素使用 width 和 h ...

  8. c#读取进程列表判断程序是否已经启动(转)

    方法一: using System.Diagnostics; Process[] vProcesses = Process.GetProcesses(); foreach (Process vProc ...

  9. mysql 表格中的数据量过大,修改数据库字段信息会花费很长的时间

    遇到几百万的数据操作遇到很多问题,比如分区,比如分表,sql语句的效率问题.努力学习好mysql优化还是很有必要的.

  10. phpMemcache消息队列类

    <?php /** * Memcache 消息队列类 */ class QMC { const PREFIX = 'ASDFASDFFWQKE'; /** * 初始化 mc * @staticv ...