Java第十六天,list接口
List接口
1.三大特点:
① 有序。② 有索引。 ③ 允许存在重复元素。
注意:
① 利用list接口的索引执行操作时,要防止索引越界引起的程序错误。
2.基本使用:
针对List接口有索引的特点,实现List接口的所有集合都拥有如下四个常用的特有方法。
(1)public void add(int position,E e)
(2)public E get(int position)
(3)public E remove(int position)
(4)public E set(int position,E e)
代码:
package com.lanyue.day15;
import java.util.ArrayList;
import java.util.List;
public class ListLearn {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add(0,"a");
list.add(1,"b");
list.add(1,"A");
System.out.println(list);
System.out.println(list.get(1));
list.remove(1);
System.out.println(list);
list.set(1,"A");
System.out.println(list);
}
}
程序运行图:

ArrayList集合
ArrayList集合是list接口的实现类,所以它具备了List集合的所有特点。除此之外,它还有特有的特点。
1.Arraylist特有特点。
① 此操作不是同步的(是多线程操作)。
② Arraylist底层是用数组实现的,所以查询快,增删慢。
LinkedList集合
LinkedList集合是list接口的实现类,所以它具备了List集合的所有特点。除此之外,它还有特有的特点。
1.LinkedList特有特点。
① 所有操作都是按照双重链接列表的需要执行的。在列表中编索引的操作将从开头或结尾遍历列表(从靠近指定索引的一端,是多线程操作)。
② 底层是用链表实现的,所以查询慢,增删快。
③ 里面大量使用了操作首尾元素的方法。
Vector集合
Vector集合是所有单列集合的超类。Vector集合是list接口的实现类,所以它具备了List集合的所有特点。除此之外,它还有特有的特点。
① 底层是用数组实现的,所以查询快,增删慢。
② Vector集合是单线程操作,所以速度相对与ArrayList集合更慢。
③ 版本较早,不建议使用。
Java第十六天,list接口的更多相关文章
- Java第二十六天,多线程等待换新机制(严格执行化)
代码: 1.老板类: package com.lanyue.day26; public class bossRunnable implements Runnable { public myLock l ...
- Java基础十--接口
Java基础十--接口 一.接口的定义和实例 /* abstract class AbsDemo { abstract void show1(); abstract void show2(); } 8 ...
- “全栈2019”Java第八十八章:接口中嵌套接口的应用场景
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- javaSE第十六天
第十六天 140 1:List的子类(掌握) 140 (1)List的子类特点 140 (2)ArrayList 141 A:没有特有功能需要学习 141 B:案例 ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- javaSE第二十六天
第二十六天 414 1:网络编程(理解) 414 (1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享 414 (2)网络编程模型 414 (3)网络编程的三要素 ...
- 第三百五十六天 how can I 坚持
一年了,三百五十六天.写个算法算下对不对. 今天突然想买辆自行车了.云马智行车,还是捷安特,好想买一辆. 网好卡.貌似少记了一天呢,357了.好快. 睡觉了,还没锻炼呢,太晚了. 1458748800 ...
- “全栈2019”Java第九十九章:局部内部类与继承详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- java重构、js与接口的实现
一.接口 接口的方法不一定必须实现的!!! 加入default,这样的方法可以不实现,如图所示 二.关于语言的特性 1.C++多继承 2.很多编程语言JavaScript.Python支持混入(Mix ...
随机推荐
- Python进阶学习之面向对象
目录 面向对象 私有属性 面向对象 python也有面向对象的编程,它与C++中的类有点相似.它也只是运算符重载,继承. class Test: num=0 def __init__(self): ...
- Rational Rose 2007破解版
首先下载好软件,链接在这里 链接:https://pan.baidu.com/s/1op-W-ZX1tqefHffs3m-r0A 提取码:0jwm 这里面包含了Rational Rose 2007版的 ...
- 在Linux环境安装redis步骤,且设置开机自动启动redis
最近在linux环境安装了redis学习,目前已经安装成功且设置开机即启动状态,我把步骤流程记录了下来,分享给需要的小伙伴. 1.我在/usr/local/localsoftware/目录下创建了一个 ...
- JAVA系列-JVM
1)JVM体系概述 JVM体系结构概览 JVM参数调优及相关参数 JVM的参数类型 标配参数:java-version; java -help X参数:-Xint 解释执行: -Xcomp 第一次使 ...
- python-集合,列表和元组
a = {11,22,33} b = [11,22,33] c = (11,22,33,22) 集合:type(a) -->>set#集合内元素不可重复,花括号括起来的还有 -->& ...
- django之forms组件,cookie&session
forms组件 先自己实现注册功能,并且对用户输入的信息加限制条件如果用户输入的信息不符合条件,前端展示报错信息 from django.shortcuts import render,HttpRes ...
- 用sort 排序
这两天看了一个比较好的sort总结,所以转载了一下 阅读目录 1.sort 2.sort简介 3.sort扩展 1.sort 使用:#include <algorithm> using ...
- 题解 P1278 【单词游戏】
前言 首先,看到这道题目,我首先想到的是暴搜,通过\(vector\)来搞,代码也是很短的. 这里用了一个类似于分治的思想 把一个大问题转化为小问题 先枚举第一个单词,之后把能拼接在它后面的单词都一个 ...
- ubuntu在github上传项目
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub. 作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户.随着越来 ...
- PAT 乙级 1007. 素数对猜想 (20) c++ 筛选法求素数
PAT 乙级 1007. 素数对猜想 (20) c++ 筛选法求素数 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数 ...