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 ...
随机推荐
- 《Python》网络编程基础
计算机网络的发展及基础网络概念 问题:网络到底是什么?计算机之间是如何通信的? 早期 : 联机 以太网 : 局域网与交换机 广播 主机之间“一对所有”的通讯模式,网络对其中每一台主机发出的信号都进行无 ...
- SharePoint REST API - 基本操作(一)
博客地址:http://blog.csdn.net/FoxDave 本文讲述如何应用SharePoint的REST接口完成基本的增删查改操作. 使用SharePoint客户端API和REST服务进 ...
- SpringMVC学习二
处理请求 今天学了三种请求,一种是 PathVariable ,一种是 RequestParam ,还有一种是CookieValue,并实现简单rest增删改查 上代码 package com.spr ...
- day 68 增删改查 语法
1 普通正则 2 分组正则 url(r'/blog/(\d+)/(\d+)',views.blog) blog(request,arq1,arq2) 按照位置传参 3 分组命名 url(r'/ ...
- sql server 2012的AlwaysOn高可用
一.Alway On高性能组件配置说明: 服务器集群节点:2 服务器的操作系统:windows 2008 Sql server版本:sql server 2012 此配置省略sql server的安装 ...
- css设置div高度与宽度相等的一种方法
div.category{ width:33%; padding:33% 0 0; } 1.关键在padding:33% 0 0这句代码,通过设置padding-top与宽度相等(padding使用百 ...
- linux各种系统下载地址
1.Arch Linux Arch Linux在安装过程中提供了强大的可定制选择,支持你下载和安装自己所需的程序包.虽然这个选择对新手来说没有多大的帮助,但是它确实能够帮助那些使用Arch构建系统和存 ...
- CRM工具简介
pacemaker是高可用集群中的CRM(Cluster Resource Manager)资源管理层,他是一个服务,可以作为一个单独的服务启动,不过在如果使用corosync1.4中,我们可以设置c ...
- git之自学
- lftp的安装
lftp的安装 安装依赖的包 yum -y install make readline-devel gnutls* 解压上传的包 tar -jxf lftp-4.0.1.tar.bz2 cd到解压 ...