Clloection接口 与List接口
collection接口:
collection是单列集合接口的根接口,该接口中又包含了多个集合接口,collection接口提供了很多操作集合的方法,比如添加元素的方法,删除元素的方法,修改元素的方法等。
| boolean add(E e) | 将指定的对象添加到集合当中 |
| bolean remove(object o) | 删除集合中的指定对象 |
| bolean isEmpty() | 判断集合中是否包含元素 |
| int size() | 获取集合中元素的个数 |
| object [] toArray | 返回包含集合中所有元素的数组 |
| iterator<E> itterator | 返回集合的迭代器,用于遍历该集合2018-05-20 |
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator; public class collectionTest {
public static void main(String[] args) {
Collection c=new ArrayList();//实例化实现了collection接口的类 //向集合中添加数据
c.add("A");
c.add("B");
c.add("C");
//判断集合中是否存在数据
System.out.println(c.isEmpty());
System.out.println(c.size());//获取集合长度
System.out.println("集合中元素为");
Iterator it=c.iterator();//获取集合迭代器对象
while(it.hasNext()){//判断集合中是否有下一个元素
String s =(String) it.next();
System.out.println(s);
} } }
List接口:
List 接口继承了collection接口,List集合中允许出现重复的元素
而且存储在该集合的元素是有序的。
List 接口常用实现类有ArrayList类与LinkedList类
| add(int index,object obj) | 向集合的index索引处添加obj对象 |
| remove(int index) | 移除index索引处的集合对象 |
| set(int index,object obj) | 修改index索引处的对象 |
| get(int index) | 获取index索引出的集合对象 |
| indexof(object obj) | 获取对象obj在集合中第一次出现的索引值 |
| lastIndexof(object obj) | 获取对象obj在集合中最后一次出现的索引值 |
| 方法名称 | 说明 |
ArryayList集合的使用:
Java中数值一旦创建其长度就不可改变,为了解决这个问题,集合框架定义了ArryaList类
public static void main(String[] args) {
// TODO Auto-generated method stub
Collection ls=new ArrayList ();
ls.add("a");
ls.add("b");
ls.add("c");
ls.add("d");
System.out.println("a的索引为"+((ArrayList) ls).indexOf("a"));
System.out.println("a的索引为"+((ArrayList) ls).lastIndexOf("a"));
System.out.println("..........集合的元素的内容.........");
// for(int i=0;i<ls.size();i++){
// String s=(String) ((ArrayList) ls).get(i);
// System.out.println(s);
//
// }
Iterator it=ls.iterator();
while(it.hasNext()){
String s =(String) it.next();
System.out.println(s);
}
}
LinkedlList集合的使用:
| 方法名称 | 说明 |
| object getFirst() | 获取集合中的第一个元素 |
| object getLast() | 获取结合中的最后一个元素 |
| void addFirst(E e) | 将指定元素添加到集合的开头 |
| void addLalt(E a) | 将指定元素添加到集合的结尾 |
ArryayList集合和LinkedlList集合的区别:
ArryayList集合是实现了动态数组数据结构的集合,LinkedlList集合是实现了链表数据结构的集合。对于遍历集合元素操作,ArryayList集合效率优于LinkedlList集合
,对于增加和删除元素的操作,LinkedlList集合效率优于ArryayList集合。
Clloection接口 与List接口的更多相关文章
- 转】C#接口-显式接口和隐式接口的实现
[转]C#接口-显式接口和隐式接口的实现 C#中对于接口的实现方式有隐式接口和显式接口两种: 类和接口都能调用到,事实上这就是“隐式接口实现”. 那么“显示接口实现”是神马模样呢? interface ...
- JDBC的使用(二):PreparedStatement接口;ResultSet接口(获取结果集);例题:SQL注入
ResultSet接口:类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集. getInt(), getFloat(), getDate(), getBoolean(), getString( ...
- 比较器:Compare接口与Comparator接口区别与理解
一.实现Compare接口与Comparator接口的类,都是为了对象实例数组排序的方便,因为可以直接调用 java.util.Arrays.sort(对象数组名称),可以自定义排序规则. 不同之处: ...
- 集合中Set接口与Collection接口,常用子类TreeSet,HashSet.
Set接口与List接口的不同之处在于: 不允许有重复的数据. 定义如下: public interface Set<E>extends Collection<E> 主要方法与 ...
- Callable接口、Runable接口、Future接口
1. Callable与Runable区别 Java从发布的第一个版本开始就可以很方便地编写多线程的应用程序,并在设计中引入异步处理.Thread类.Runnable接口和Java内存管理模型使得多线 ...
- 转载-- http接口、api接口、RPC接口、RMI、webservice、Restful等概念
http接口.api接口.RPC接口.RMI.webservice.Restful等概念 收藏 Linux一叶 https://my.oschina.net/heavenly/blog/499661 ...
- C#集合--ICollection接口和IList接口
虽然列举接口提供了一个协议,用于向前的方式遍历集合,但它们没有提供一种机制来确定集合的大小,通过索引访问集合的成员,搜索集合,或修改集合.为了实现这些功能,.NET Framework定义了IColl ...
- Java对象克隆(Clone)及Cloneable接口、Serializable接口的深入探讨
Java对象克隆(Clone)及Cloneable接口.Serializable接口的深入探讨 Part I 没啥好说的,直接开始Part II吧. Part II 谈到了对象的克隆,就不得不说为什么 ...
- Java基础知识强化104:Serializable接口 与 Parcelable接口
1. 什么是 序列化 和 反序列化 ? 序列化 :序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化.可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间.序 ...
随机推荐
- TCP的核心系列 — ACK的处理(一)
TCP发送数据包后,会收到对端的ACK.通过处理ACK,TCP可以进行拥塞控制和流控制,所以 ACK的处理是TCP的一个重要内容.tcp_ack()用于处理接收到的ACK. 本文主要内容:TCP接收A ...
- FPGrowth 实现
在关联规则挖掘领域最经典的算法法是Apriori,其致命的缺点是需要多次扫描事务数据库.于是人们提出了各种裁剪(prune)数据集的方法以减少I/O开支,韩嘉炜老师的FP-Tree算法就是其中非常高效 ...
- ExtJS:文件上传实例
ExtJS:文件上传实例 var ext_dateFormat = 'Y-m-d H:i:s'; var dateFormat = 'yyyy-MM-dd HH:mm:ss'; var date = ...
- Testbench(转)
本来还打算自己写下对Testbench的理解,后来发现百度百科名片解释得很好,所以就直接转了. 原文百度百科链接:http://baike.baidu.com/link?url=dxzsOAs32IE ...
- android本地音乐播放器
乐乐音乐播放器更新到2.0版本了,之前1.0版本更多的是试验性实践,这次更新的2.0版本,更多的是将1.0的功能移植到2.0,在界面和皮肤风格上,参考了 天天动听 界面,在歌词显示方面 与 1.0 版 ...
- lpad函数
函数介绍 lpad函数是Oracle数据库函数,lpad函数从左边对字符串使用指定的字符进行填充.从其字面意思也可以理解,l是left的简写,pad是填充的意思,所以lpad就是从左边填充的意思. 2 ...
- Spring定时任务(一):SpringTask使用
背景:在日常开发中,经常会用到任务调度这类程序.实现方法常用的有:A. 通过java.util.Timer.TimerTask实现. B.通过Spring自带的SpringTask. C. 通过Spr ...
- Hibernate中配置文件的学习
首先我们看一下hibernate的主配置文件 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Conf ...
- 动态规划:给出两个字符串s1和s2,返回其中最大的公共子串
求公共子字符串问题(连续的) 这个题目是当时远景能源公司现场笔试的一道题目,当时根本就不知道动态规划是什么鬼,直接上来就暴力求解,面试官很谄媚的问我,你这能求出来吗?当时很年轻的说,能啊!现在想,当时 ...
- django1.8升级1.9的几个问题
1.URL Pattern警告,旧式的URL定义方法将在1.10版本中被废止,所以这个版本仅仅是警告,不过这个警告让我看到了升级1.9这个非LTS版本的意义. 2.Django自身所带Models变化 ...