四种常见的数据结构:
    1.堆栈结构:
        先进后出的特点。(就像弹夹一样,先进去的在后进去的低下。)
    2.队列结构:
        先进先出的特点。(就像安检一样,先进去的先出来)
    3.数组结构:
        查找元素快,但是增删元素慢
    4.链表结构:
        增删元素快,但是查找元素慢

LinkedList:(List接口下的一个子类,和ArrayList是同级别关系)
    1.底层是链表结构
    2.它的一些特有方法:
        addFirst(E  e) : 向集合中的开头添加元素
        addLast(E  e):向集合的末尾添加元素 
        getFirst():得到集合中的第一个元素
        getLast():得到集合中的最后一个元素
        removeFirst():删除集合中的第一个元素
        removeLast():删除集合中的最后一个元素
        pop(E  e) : 从集合的最上面弹出一个元素
        push():向集合的最上面添加元素
        isEmpty() : 判断集合中是否有为空
    3.在开发时,LinkedList集合也可以作为堆栈,队列的结构使用。在开发时,LinkedList集合也可以作为堆栈,队列的结构使用。
        使用的方法是:调用addFirst(E  e) 方法和getFirst() 方法

Set集合(Set是一个接口,和List一样,它俩也是同级别关系)
    Set集合的遍历方式只有两种,1.  增强for    2.  迭代器
    Set集合特点:
        唯一性,元素不重复
    1.Set的子类有:
        HashSet、LinkedHashSet
    2.HashSet:
        a.HashSet是无序的,存取顺序不一样
        b.底层是哈希表结构,通常自定义对象是需要重写HashCode方法和equals方法
        c.HashSet是使用HashCode方法和equals方法来保证元素唯一的
        d.判断原理是:
            先判断HashCode方法
                相同:
                    不添加
                不相同:判断equals方法:
                    不相同:添加
                    相同:不添加
LinkedHashSet:
    1.LinkedHashSet是有序的,存取顺序是一样的
    2.底层是链表+哈希表结构。
    3.通过链表来保证有序。通过哈希表来保证元素的唯一。

Collection总结:
    1.子类:
        List、Set(两个都是接口)
            List子类:
                ArrayList
                LinkedList
            Set子类:
                HashSet
                LinkedHashSet
    2.Collection的方法:
        boolean  add(Object  e): 添加
        void   clear(): 清空
        boolean   remove(Object o):删除
        boolean  contains(Object o): 包含
        boolean  isEmpty():是否为空
        Iterator  iterator():迭代器
        int   size(): 集合长度
        Object   toArray(): 将集合存到数组中
    3.迭代器:
        两个方法:
            hasNext():是否有下一个元素
            next(): 获取下一个元素
    4.List和Set的区别:
        List:
            有序,且可有重复元素
        Set:
            它是一个无序的集合(元素存与取的顺序可能不同)
            不可以有重复的元素
    5.List集合中的特有方法:(有角标的都是List集合中的)
        void add(int index, Object element)   将指定的元素,添加到该集合中的指定位置上
        Object get(int index)     返回集合中指定位置的元素。
        Object remove(int index)    移除列表中指定位置的元素, 返回的是被移除的元素
        Object set(int index, Object element)   用指定元素替换集合中指定位置的元素,返回值的更新前的元素
    6.泛型:
        好处:
            提高了程序的安全性
            将运行时期的异常提到的编译时期
            避免了类型转换

Map:(它也是一个接口,它是和Collection同级别的,它是一个双列集合)
    常用子类:
        HashMap<key , value>:
            泛型里存储键和值,键唯一,但是值可以重复。底层是哈希表结构,基本和HashSet集合差不多,在存储自定义对象时,需要重写HashCode方法和equals方法。无序。
        LinkedHashMap:
            底层是链表+哈希表结构。有序,存和取的顺序一致。
        方法:
            put(K,V):添加元素,相当于list集合中的add方法
            get(key):得到key对应的值。
    Map遍历(两种方式)
        1. keySet()方法
            转为Set对象,获取Map集合中的键集,存储到Set集合中
            然后可使用增强for或迭代器来获取键和值都通过,键来获取值。            
        2. entrySet()方法
            方法:
                getey()
                getValue()
            转为entry对象,获取Map集合中的键和值的映射关系,存储到entry对象中。
            然后,可以使用增强for或迭代器来获取键和值。
            都通过,键来获取值。

Properties类(一般和流一块使用,它也是Map下的一个子类它是一个可以持久化的属性集。键值可以存储到集合中,也可以存储到持久化的设备(硬盘、U盘、光盘)上。键值的来源也可以是持久化的设备。
(有和流技术相结合的方法。)

1.public Object setProperty(String key, String value)调用 Map 的方法 put。
    2.public Set<String> stringPropertyNames()返回此属性列表中的键集, //keyset()方法
    3.public String getProperty(String key)用指定的键在此属性列表中搜索属性//get()方法
        写入文件的方法:
            store(Writer,”文件的描述信息”)
        读取文件的方法:
            load(Reader)

可变参数:
        表现格式为:
            数据类型...   变量名
            相当于一个数组。

Collections工具类
        方法
            shuff()随机打乱方法
            sort()排序方法,按照自然规律排序。

四种常见的数据结构、LinkedList、Set集合、Collection、Map总结的更多相关文章

  1. 一文读懂四种常见的XML解析技术

    之前的文章我们讲解了<XML系列教程之Schema技术_上海尚学堂java培训技术干货><XML的概念.特点与作用.XML申明_上海Java培训技术干货>,大家可以点击回顾一下 ...

  2. 四种常见的App弹窗设计,你有仔细注意观察吗?

    弹窗又称为对话框,是App与用户进行交互的常见方式之一.弹窗分为模态弹窗和非模态弹窗两种,两者的区别在于需不需要用户对其进行回应.模态弹窗会打断用户的正常操作,要求用户必须对其进行回应,否则不能继续其 ...

  3. (转)四种常见的 POST 提交数据方式

    四种常见的 POST 提交数据方式(转自:https://imququ.com/post/four-ways-to-post-data-in-http.html) HTTP/1.1 协议规定的 HTT ...

  4. 四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现

    原文:四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现 虽然说现在官方的自带插件已经有很多了,但是有时候往往不能满足我们 ...

  5. 四种常见的 POST 提交数据方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml)

    四种常见的 POST 提交数据方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml) 转 ...

  6. application/json 四种常见的 POST 提交数据方式

    四种常见的 POST 提交数据方式   HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 ...

  7. 转:application/json 四种常见的 POST 提交数据方式

    四种常见的 POST 提交数据方式 HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 PO ...

  8. POST提交数据时四种常见的数据格式

    最近项目部署到新环境tomcat+mysql,想看看项目部署成功没有,就用soupui调对应接口开测试,soupui使用比较简单,给上接口地址,入参xml报文,把入参的media Type设置为app ...

  9. http协议里定义的四种常见数据的post方法

    原文 https://blog.csdn.net/charlene0824/article/details/51199292 关于http协议里定义的四种常见数据的post方法,分别是: applic ...

随机推荐

  1. 手写基于Promise A+规范的Promise

    const PENDING = 'pending';//初始态const FULFILLED = 'fulfilled';//初始态const REJECTED = 'rejected';//初始态f ...

  2. Hadoop TextInputFormat

    1. TextInputFortmat TextInputFormat是默认的InputFormat.每条记录是一行输入.Key是LongWritable类型,存储该行在整个文件中的字节偏移量(不是行 ...

  3. python接口自动化测试 - requests库的post请求进行文件下载

    前言 之前讲了文件上传,当然就有文件下载啦 文件下载操作步骤 极其简单,将二进制格式的响应内容存进本地文件中,根据需要下载的文件的格式来写文件名即可 down_url = 'https://www.i ...

  4. css动画 自动打字,让你的文字飞舞起来

    自动打字的效果 非一般的炫酷 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  5. 【网易官方】极客战记(codecombat)攻略-地牢-攻破突袭

    关卡连接: https://codecombat.163.com/play/level/hack-and-dash 通过加速药来逃离地牢精灵 简介: 空气中弥漫着危险的气息.你应该从地牢里逃出来. 但 ...

  6. 普及C组第四题(8.2)

    1342. [南海2009初中]cowtract(网络) (Standard IO) 题目:  Bessie受雇来到John的农场帮他们建立internet网络.农场有 N (2<= N < ...

  7. CentOS7服务器状态下安装xampp

    遇到的问题 1.远程不能访问phpmyadmin,只能在本地访问,但是本地为命令行模式. 需要修改一下服务器端的配置,我们找到 /opt/lampp/etc/extra/httpd-xampp.con ...

  8. 快捷键(二):VSCode

    1,打开命令板:F1或Ctrl+Chift+P 2,新建文件:Ctrl+N 3,文件间切换:Ctrl+Tab 4,新开界面:Ctrl+Shift+N 5,关闭当前窗口:Ctrl+W 6,关闭界面:Ct ...

  9. EVE-NG镜像模板资源占用统计

    转:http://www.emulatedlab.com/forum.php?mod=viewthread&tid=432&extra=page%3D1 EVE  Image fold ...

  10. centos 添加rpmfusion源,yum 安装 ffmpeg

    rpmfusion提供了,在Fedora和 centos 源之外的其他yum 源 例如ffmpeg 在 centos 基础源和epel-release 里面都没有, 但是可以在rpmfusion中找到 ...