List接口的使用方法
★List接口特点:
1.元素存储有序的集合
2.带索引的集合
3.集合中可以有重复的元素
4.常用的子类有ArrayList , LinkedList
★List接口的方法:add , remove() , set(int index,Object e) , get()
1.add:将元素插入到指定的索引上
//1将元素插入到指定的索引上
public static void fun1(){
List<String> s = new ArrayList<String>();
s.add("a");
s.add("a1");
s.add("a2");
System.out.println(s);
s.add(1,"asjkdk");
System.out.println(s);
}
2.remove:将指定索引上的元素移除
// 2移除 指定索引上的元素 remove() 返回的是被删除的元素
public static void fun2(){
List<String> s = new ArrayList<String>();
s.add("a");
s.add("a1");
s.add("a2");
String se = s.remove(0);
//返回被删除的元素
System.out.println(se);
System.out.println(s);
}
3.set(int index,Object e):修改指定索引上的元素
//3 修改指定索引上的元素 返回值是 被修改前的元素
public static void fun3(){
List<String> s = new ArrayList<String>();
s.add("a");
s.add("a1");
s.add("a2");
String s1 = s.set(0, "我aijava");
//返回被修改前的元素
System.out.println(s1+" s1");
System.out.println(s);
}
★LinkedList类
特点:1. 底层采用的是链式结构 每次查询都是从头或者尾部开始查找 查询相对较慢
2.特有的方法removeFirst,removeLast
方法:
1.addLast在集合后面添加,addFirst在集合前面添加
public static void fun1(){
LinkedList<String> link = new LinkedList<String>();
link.addLast("猪猪侠");
link.addLast("佩琪");
link.addFirst("乔治");
link.addFirst("小呆呆");
//迭代器
Iterator<String> it = link.iterator();
//判断是否有下一个元素
while(it.hasNext()){
String e = it.next();
System.out.println(e);
}
2.getFirst(); 得到集合第一个元素,getLast();得到集合最后一个元素
// 2getFirst(); getLast(); 先判断集合是否为空后 在进行循环或者获得操作
public static void fun2(){
LinkedList<String> link = new LinkedList<String>();
// link.add("李白");
// link.add("韩信");
// link.add("赵云");
// String first2 = link.getFirst();
// System.out.println(first2);
if(!link.isEmpty()) {//判断是否为空
String first = link.getFirst();
System.out.println(first);
} }
3.removeFirst删除前面的元素,removeLast删除后面的元素
//3remove 删除功能
public static void fun3(){
LinkedList<String> link = new LinkedList<String>();
link.add("每当我听到雨声");
link.add("就像听到了心中的迷茫");
link.removeFirst();
System.out.println(link);
}
List接口的使用方法的更多相关文章
- C# 索引器,实现IEnumerable接口的GetEnumerator()方法
当自定义类需要实现索引时,可以在类中实现索引器. 用Table作为例子,Table由多个Row组成,Row由多个Cell组成, 我们需要实现自定义的table[0],row[0] 索引器定义格式为 [ ...
- 通过实现System.IComparable接口的CompareTo方法对两个类进行比较
假设现在有一个学生类 class Student { int age; public Student(int age) { this.age = age; } } 要使学生类之间能进行比较,实现Sys ...
- ICompare接口、Sort()方法
1.接口中的方法并不实现具体功能,继承于该接口的类必须实现具体功能. 核心思想:对修改封闭,对扩展开放. 2.Sort()方法: 默认:Sort(内容) 英文:按照首字母顺序排序,首字母相同则看第二个 ...
- Java8新特性——接口的默认方法和类方法
Java8新增了接口的默认方法和类方法: 以前,接口里的方法要求全部是抽象方法,java8以后允许在接口里定义默认方法和类方法: 不同的是: 默认方法可以通过实现接口的类实例化的对象来调用,而类方法只 ...
- Java接口中的方法
接口中可以含有变量和方法.但是,接口中的变量会被隐式地指定为public static final变量(并且只能是public static final变量,用private修饰会报编译错误),而方法 ...
- 集合中list、ArrayList、LinkedList、Vector的区别、Collection接口的共性方法以及数据结构的总结
List (链表|线性表) 特点: 接口,可存放重复元素,元素存取是有序的,允许在指定位置插入元素,并通过索引来访问元素 1.创建一个用指定可视行数初始化的新滚动列表.默认情况下,不允许进行多项选择. ...
- IEnumerable接口的Aggregate方法
以前小猪为了累加一个集合中的类容通常会写出类似这样的C#代码: string result ="": foreach (var item in items) { result+=i ...
- C#类、接口、虚方法和抽象方法0322
虚拟方法和抽象方法有什么区别与联系: 1.抽象方法只有声明没有实现代码,需要在子类中实现:虚拟方法有声明和实现代码,并且可以在子类中重写,也可以不重写使用父类的默认实现. 2.抽象类不能被实例化(不可 ...
- C#中使用委托、接口、匿名方法、泛型委托实现加减乘除算法
使用C#实现加减乘除算法经常被用作新手练习.本篇来分别体验通过委托.接口.匿名方法.泛型委托来实现. 使用委托实现 加减乘除拥有相同的参数个数.类型和返回类型,首先想到了使用委托实现. //创建一个委 ...
- IEnumerable接口的扩展方法
/// <summary>/// IEnumerable接口的扩展方法,支持它的实现类是List的情况/// </summary>using System.Collection ...
随机推荐
- java 实现简单链式队列
package com.my; /** * 链式队列 * @author wanjn * */ public class LinkedQueue { private Node head; privat ...
- elasticsearch基本操作之--使用QueryBuilders进行查询
/** * 系统环境: vm12 下的centos 7.2 * 当前安装版本: elasticsearch-2.4.0.tar.gz */ QueryBuilder 是es中提供的一个查询接口, 可以 ...
- 数据库-->表操作
一.MySQL存储引擎 # InnoDB MySql 5.6 版本默认的存储引擎.InnoDB 是一个事务安全的存储引擎,它具备提交.回滚以及崩溃恢复的功能以保护用户数据.InnoDB 的行级别锁定以 ...
- 十三. Python基础(13)--生成器进阶
十三. Python基础(13)--生成器进阶 1 ● send()方法 generator.send(value) Resumes the execution, and "sends&qu ...
- [HAOI2006]l旅行
这道题...一眼看出一个暴力思虑...那就是按照生成树... 排完序之后从当前边开始向后做生成树... 统计一下答案就好了... 结果...这就是正解...QVQ...smg...我去... 呆码: ...
- matlab中diff的用法
若是diff(),括号里的元素为向量,那么前一个减后一个即为diff后的结果: 若diff(),括号里的元素为矩阵,那么下一行减上一行即为diff 后的结果:
- Oracle非归档模式下脱机数据文件
正常情况下,要想对数据文件脱机,必须在归档模式下,这是ORACLE自动保护的一种措施,防止在非归档模式下对数据文件脱机,造成数据丢失.如果想在非归档模式下执行数据文件脱机操作,则需要加上“for dr ...
- 转--让一个运行在SYSTEM权限下的进程与当前用户的桌面进行交互
#define DESKTOP_ALL ( DESKTOP_READOBJECTS | DESKTOP_CreateWINDOW | \ DESKTOP_CreateMENU | DESKTOP_HO ...
- dos命令:目录操作
目录操作 一.cd语句 1.介绍 显示当前目录名或改变当前目录. 2.语法 CHDIR [/D] [drive:][path] CHDIR [..] CD [/D] [drive:][path] ...
- php优秀框架codeigniter学习系列——前言
php的框架众多,笔者用过的包括thinkphp,CI,smarty,laravel,也用过一些公司自己开发的框架. thinkphp是国人自己开发的,我大概用过一段时间,基本功能都还好,应该也还比较 ...