collection接口:

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接口的更多相关文章

  1. 转】C#接口-显式接口和隐式接口的实现

    [转]C#接口-显式接口和隐式接口的实现 C#中对于接口的实现方式有隐式接口和显式接口两种: 类和接口都能调用到,事实上这就是“隐式接口实现”. 那么“显示接口实现”是神马模样呢? interface ...

  2. JDBC的使用(二):PreparedStatement接口;ResultSet接口(获取结果集);例题:SQL注入

    ResultSet接口:类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集. getInt(), getFloat(), getDate(), getBoolean(), getString( ...

  3. 比较器:Compare接口与Comparator接口区别与理解

    一.实现Compare接口与Comparator接口的类,都是为了对象实例数组排序的方便,因为可以直接调用 java.util.Arrays.sort(对象数组名称),可以自定义排序规则. 不同之处: ...

  4. 集合中Set接口与Collection接口,常用子类TreeSet,HashSet.

    Set接口与List接口的不同之处在于: 不允许有重复的数据. 定义如下: public interface Set<E>extends Collection<E> 主要方法与 ...

  5. Callable接口、Runable接口、Future接口

    1. Callable与Runable区别 Java从发布的第一个版本开始就可以很方便地编写多线程的应用程序,并在设计中引入异步处理.Thread类.Runnable接口和Java内存管理模型使得多线 ...

  6. 转载-- http接口、api接口、RPC接口、RMI、webservice、Restful等概念

     http接口.api接口.RPC接口.RMI.webservice.Restful等概念 收藏 Linux一叶 https://my.oschina.net/heavenly/blog/499661 ...

  7. C#集合--ICollection接口和IList接口

    虽然列举接口提供了一个协议,用于向前的方式遍历集合,但它们没有提供一种机制来确定集合的大小,通过索引访问集合的成员,搜索集合,或修改集合.为了实现这些功能,.NET Framework定义了IColl ...

  8. Java对象克隆(Clone)及Cloneable接口、Serializable接口的深入探讨

    Java对象克隆(Clone)及Cloneable接口.Serializable接口的深入探讨 Part I 没啥好说的,直接开始Part II吧. Part II 谈到了对象的克隆,就不得不说为什么 ...

  9. Java基础知识强化104:Serializable接口 与 Parcelable接口

    1. 什么是 序列化 和 反序列化 ?     序列化 :序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化.可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间.序 ...

随机推荐

  1. TCP的核心系列 — ACK的处理(一)

    TCP发送数据包后,会收到对端的ACK.通过处理ACK,TCP可以进行拥塞控制和流控制,所以 ACK的处理是TCP的一个重要内容.tcp_ack()用于处理接收到的ACK. 本文主要内容:TCP接收A ...

  2. FPGrowth 实现

    在关联规则挖掘领域最经典的算法法是Apriori,其致命的缺点是需要多次扫描事务数据库.于是人们提出了各种裁剪(prune)数据集的方法以减少I/O开支,韩嘉炜老师的FP-Tree算法就是其中非常高效 ...

  3. ExtJS:文件上传实例

    ExtJS:文件上传实例 var ext_dateFormat = 'Y-m-d H:i:s'; var dateFormat = 'yyyy-MM-dd HH:mm:ss'; var date = ...

  4. Testbench(转)

    本来还打算自己写下对Testbench的理解,后来发现百度百科名片解释得很好,所以就直接转了. 原文百度百科链接:http://baike.baidu.com/link?url=dxzsOAs32IE ...

  5. android本地音乐播放器

    乐乐音乐播放器更新到2.0版本了,之前1.0版本更多的是试验性实践,这次更新的2.0版本,更多的是将1.0的功能移植到2.0,在界面和皮肤风格上,参考了 天天动听 界面,在歌词显示方面 与 1.0 版 ...

  6. lpad函数

    函数介绍 lpad函数是Oracle数据库函数,lpad函数从左边对字符串使用指定的字符进行填充.从其字面意思也可以理解,l是left的简写,pad是填充的意思,所以lpad就是从左边填充的意思. 2 ...

  7. Spring定时任务(一):SpringTask使用

    背景:在日常开发中,经常会用到任务调度这类程序.实现方法常用的有:A. 通过java.util.Timer.TimerTask实现. B.通过Spring自带的SpringTask. C. 通过Spr ...

  8. Hibernate中配置文件的学习

    首先我们看一下hibernate的主配置文件 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Conf ...

  9. 动态规划:给出两个字符串s1和s2,返回其中最大的公共子串

    求公共子字符串问题(连续的) 这个题目是当时远景能源公司现场笔试的一道题目,当时根本就不知道动态规划是什么鬼,直接上来就暴力求解,面试官很谄媚的问我,你这能求出来吗?当时很年轻的说,能啊!现在想,当时 ...

  10. django1.8升级1.9的几个问题

    1.URL Pattern警告,旧式的URL定义方法将在1.10版本中被废止,所以这个版本仅仅是警告,不过这个警告让我看到了升级1.9这个非LTS版本的意义. 2.Django自身所带Models变化 ...