2019-11-05-23:03:28


List集合:

  java.util.List 接口继承自 Collection 接口,是单列集合的一个重要分支,习惯性地会将实现了List 接口的对象称为List集合

  特点:

    1. 它是一个元素存取有序的集合。例如,存元素的顺序是11、22、33。那么集合中,元素的存储就是按照11、 22、33的顺序完成的

    2. 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)

    3.集合中可以有重复的元素,通过元素的equals方法,来比较是否为重复元素

List集合常用方法:

  List作为Collection集合的子接口,不但继承了Collection接口中的全部方法,而且还增加了一些根据元素索引来操作集合的特有方法

    1.public void add(int index,E element):将指定的元素,添加到该集合中的指定位置上

    2.public E get(int index) :返回集合中指定位置的元素。

    3.public E remove(int index) : 移除列表中指定位置的元素, 返回的是被移除的元素。

    4.public E set(int index, E element) :用指定元素替换集合中指定位置的元素,返回值的更新前的元素。

 package demosummary.list;

 import java.util.ArrayList;
import java.util.List; public class ListTest {
public static void main(String[] args) {
//创建List集合对象
List<String> list = new ArrayList<>();
//向list集合添加元素
list.add("德玛");
list.add("德邦");
list.add("皇子");
list.add("剑圣");
//打印list集合
System.out.println(list);//[德玛, 德邦, 皇子, 剑圣]
/**
public void add(int index, E element) : 将指定的元素,添加到该集合中的指定位置上
*/
list.add(1,"卡莎");
System.out.println(list);//[德玛, 卡莎, 德邦, 皇子, 剑圣]
/**
*public E get(int index) :返回集合中指定位置的元素。
*/
System.out.println(list.get(2));//德邦
/**
* public E remove(int index) : 移除列表中指定位置的元素, 返回的是被移除的元素。
*/
System.out.println(list.remove(3));//皇子
System.out.println(list);//[德玛, 卡莎, 德邦, 剑圣]
/**
* public E set(int index, E element) :用指定元素替换集合中指定位置的元素,返回值的更新前的元素。
*/
String result = list.set(1, "武器");
System.out.println(result);//卡莎
System.out.println(list);//[德玛, 武器, 德邦, 剑圣]
/**
* 增强for遍历list集合
*/
for (String s : list) {
System.out.println(s);
}
}
}

List集合的子类:

  ArrayList集合:

    java.util.ArrayList 集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用多的功能为 查询数据、遍历数据,所以 ArrayList 是常用的集合。

    注意:许多程序员开发时非常随意地使用ArrayList完成任何需求,并不严谨,这种用法是不提倡的。

  LinkedList集合:

    java.util.LinkedList 集合数据存储的结构是链表结构。方便元素添加、删除的集合。(LinkedList是一个双向链表)

  LinkeList集合的一些操作方法(了解即可)

    public void addFirst(E e) :将指定元素插入此列表的开头。

    public void addLast(E e) :将指定元素添加到此列表的结尾。

    public E getFirst() :返回此列表的第一个元素。

    public E getLast() :返回此列表的后一个元素。

    public E removeFirst() :移除并返回此列表的第一个元素。

    public E removeLast() :移除并返回此列表的后一个元素。

    public E pop() :从此列表所表示的堆栈处弹出一个元素。

    public void push(E e) :将元素推入此列表所表示的堆栈。

    public boolean isEmpty() :如果列表不包含元素,则返回true

 package demosummary.list;

 import java.util.LinkedList;

 public class LinkedListTest {
public static void main(String[] args) {
//创建LinkedList集合对象
LinkedList<String> list = new LinkedList<>();
/**
* public void addFirst(E e) :将指定元素插入此列表的开头。
* public void addLast(E e) :将指定元素添加到此列表的结尾。
*/
list.addFirst("德玛");
System.out.println(list);//[德玛]
list.addFirst("德邦");
System.out.println(list);//[德邦, 德玛]
list.addLast("皇子");
System.out.println(list);//[德邦, 德玛, 皇子]
/**
* public E getFirst() :返回此列表的第一个元素。
* public E getLast() :返回此列表的后一个元素。
*/
System.out.println(list.getFirst());//德邦
System.out.println(list.getLast());//皇子
/**
* public E removeFirst() :移除并返回此列表的第一个元素。
* public E removeLast() :移除并返回此列表的最后一个元素
*/
// String s = list.removeFirst();
// System.out.println(s);//德邦
// System.out.println(list);//[德玛, 皇子]
// String s1 = list.removeLast();
// System.out.println(s1);//皇子
// System.out.println(list);//[德玛]
/**
* public E pop() :从此列表所表示的堆栈处弹出一个元素。
*/
String pop = list.pop();
System.out.println(pop);//德邦
/**
* public void push(E e) :将元素推入此列表所表示的堆栈。
*/
list.push("卡莎");
System.out.println(list);//[卡莎, 德玛, 皇子]
list.push("武器");
System.out.println(list);//[武器, 卡莎, 德玛, 皇子]
/**
* public boolean isEmpty() :如果列表不包含元素,则返回true
*/
boolean empty = list.isEmpty();
System.out.println(empty);//false
}
}

Java之路---Day18(List集合)的更多相关文章

  1. Java之路——名词解释(一)

    一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...

  2. Atitit.excel导出 功能解决方案 php java C#.net版总集合.doc

    Atitit.excel导出 功能解决方案 php java C#.net版总集合.docx 1.1. Excel的保存格式office2003 office2007/2010格式1 1.2. 类库选 ...

  3. Java比较器对数组,集合排序一

    数组排序非常简单,有前辈们的各种排序算法,再加上Java中强大的数组辅助类Arrays与集合辅助类Collections,使得排序变得非常简单,如果说结合比较器Comparator接口和Collato ...

  4. Java基础知识强化之集合框架笔记39:Set集合之HashSet存储字符串并遍历

    1. HashSet类的概述: (1)不保证set的迭代顺序 (2)特别是它不保证该顺序恒久不变 HashSet底层数据结构是哈希表,哈希表依赖于哈希值存储,通过哈希值来确定元素的位置,  而保证元素 ...

  5. Java基础知识强化之集合框架笔记27:ArrayList集合练习之去除ArrayList集合中的重复字符串元素

    1. 去除ArrayList集合中的重复字符串元素(字符串内容相同) 分析: (1)创建集合对象 (2)添加多个字符串元素(包含重复的) (3)创建新的集合 (4)遍历旧集合,获取得到每一个元素 (5 ...

  6. Java基础知识强化之集合框架笔记07:Collection集合的遍历之迭代器遍历

    1. Collection的迭代器: Iterator iterator():迭代器,集合的专用遍历方式 2. 代码示例: package cn.itcast_03; import java.util ...

  7. Java基础知识强化之集合框架笔记05:Collection集合的遍历

    1.Collection集合的遍历 Collection集合直接是不能遍历的,所以我们要间接方式才能遍历,我们知道数组Array方便实现变量,我们可以这样: 使用Object[]  toArray() ...

  8. Python之路,Day18 - 开发一个WEB聊天来撩妹吧

    Python之路,Day18 - 开发一个WEB聊天来撩妹吧   本节内容: 项目实战:开发一个WEB聊天室 功能需求: 用户可以与好友一对一聊天 可以搜索.添加某人为好友 用户可以搜索和添加群 每个 ...

  9. Java之路——敬JAVA初学者(作者:MoMo)

    作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊!    要离开学校了,还是想留 ...

随机推荐

  1. SpringBoot——IDEA使用 Spring Initializer快速创建项目【四】

    前言 使用Spring Initializer快速创建项目 步骤 首先肯定是打开我们的IDEA的编辑器呀~ 创建项目 File -> New -> Project Spring Initi ...

  2. JMeter【第四篇】参数化

    概念 参数化的原因,并不是网上说的真实模拟不同用户,真实反应服务器性能,而是: 数据唯一性(比如注册名不能一样) 避免数据库查询缓存 如何避免参数化: 去掉唯一性校验的约束 关闭数据库的查询缓存,my ...

  3. 记录一次群答问:requests获取cookie

    问题: 为了测试,写的sever,下面仅为set cookie的部分代码 response = make_response('{"code":9420, "msg&quo ...

  4. MySQL体系结构与存储引擎

    MySQL 体系结构 先看 MySQL 数据库的体系结构,如下图所示. MySQL 体系结构由 Client Connectors 层.MySQL Server 层及存储引擎层组成. Client C ...

  5. Linux 命令 mv

    mv 命令 --no-target-directory 参数确保对目录进行重命名而不是移动 https://www.gnu.org/software/coreutils/manual/html_nod ...

  6. janusgraph的数据模型

    janusgraph的数据模型--->参考 1.简介 janusgraph的数据模型,就是一数据结构中得图结构相似.所以janusgraph的数据schema主要定义在三个要素上:顶点,边,属性 ...

  7. ubuntu下vi/vim 的基本用法

    https://blog.csdn.net/weixin_37657720/article/details/80645991 :q!    不保存强制推出. :wq   保存并退出.

  8. CentOS7.5 系统最小化安装与初始化配置

    CentOS7.5 系统最小化安装与初始化配置 1.安装标准化的系统 1.1.系统安装期间的语言 选择:中文-简体中文,安装完成也会默认支持中文输出,便于管理 1.2.时区选择 亚洲上海,CST时区( ...

  9. windows下socket编程实现client和server双向通信

    服务端代码server.c // server.cpp : Defines the entry point for the console application. // #include <s ...

  10. 笔记&想要置顶但懒得置顶的文章目录

    1.\(\text{Markdown&Latex}\)学习笔记 2.一些笔记 3.好东西 4.线段树学习笔记 5.并查集学习笔记 6.友链 7.语录