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. Python并发编程之进程通信

    ''' 进程间的通信 ''' """ multiprocessing模块支持进程间通信的两种主要形式:管道和队列 都是基于消息传递实现的, ""&qu ...

  2. 37 树莓派识别opencv-dnn

    https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry-pi-using-opencv-dnn-98827255fa60 ...

  3. [无效]网络流之Edmond-Karp算法

    // 此博文为迁移而来,写于2015年2月2日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102vr12.html   UP ...

  4. 洛谷 P1816 忠诚 题解

    P1816 忠诚 题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记k次账,由于管家聪明能干,因而管家总是让财主十分满意.但是由于一些人的挑拨,财 ...

  5. table开发中遇到的问题

    table元素是一个很常用的元素.但是在开发中,我也遇到了一些值得记录下来的问题及解决方案: 1.td内容溢出时,隐藏内容并且以省略号提示 .hide-content{ /* 不换行 */ white ...

  6. 09-排序2 Insert or Merge (25 分)

    According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...

  7. 常用Linux软件安装

    JDK 先从Oracle官网下载JDK Linux版本的安装包,上传到服务器,这里推荐在服务器中创建一个目录/software,可以将所有软件的安装包放在这个目录下(或者是/opt目录下),将软件包解 ...

  8. SUSE12.2 编译usbutils

    折腾了两天,终于交叉编译出来lsusb命令可以在单板上跑起来,记录一下 1:编译eudev下载地址:https://dev.gentoo.org/~blueness/eudev/,版本eudev-3. ...

  9. Docker方式安装SonarQube

    获取镜像 docker pull postgres: docker pull sonarqube:-community 启动镜像 docker run -d -p : -e POSTGRES_PASS ...

  10. 【windows】ping对方ip端口,tcping工具

    1.先下载tcping.exe https://elifulkerson.com/projects/tcping.php 2.把tcping.exe复制到C:\Windows\System32 3.使 ...