Java集合与泛型(一)
1、如上图在集合中的两大接口为:Collection和Map。
2、Collection的子接口有三个分别为:List(列表),Queue(队列),Set。
这里只对最常用的做一下介绍。其中几个比较重要的几个实现类为:ArrayList、LinkedList、Vector、HashSet、HashMap、HashTable。
List是有顺序的序列,并且允许添加重复的对象。
3、ArrayList中常用的方法:
1)从它的命名就可以看出这个列表和数组有一定的关系,其实它的底层实现就是用数组实现的。区别就是数组长度不可变,而ArrayList长度是可变的。在效率上数组要比ArrayList快。
2)ArrayList的常用方法和操作可分为:添加、删除、修改、比较、遍历几种。如下面的代码实例中包括了这些基本操作:
创建的people类:
public class PeopleDemo { private String name; private boolean sex; public PeopleDemo(String name, boolean sex) { super(); this.name = name; this.sex = sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } public boolean isSex() { return sex; } public void setSex(boolean sex) { this.sex = sex; } @Override public String toString() { // TODO Auto-generated method stub String str; if(this.isSex()){ str = "男"; }else{ str = "女"; } return this.getName()+"性别"+str; } }
基本操作方法:
public class CollectionDemo { private static List list; private static PeopleDemo pd1; private static PeopleDemo pd2; private static PeopleDemo pd3; private static PeopleDemo pd4; private static PeopleDemo pd5; private static PeopleDemo[] pds1; private static PeopleDemo[] pds2; public static void init(){ list = new ArrayList(); pd1 = new PeopleDemo("张三", true); pd2 = new PeopleDemo("李四", true); pd3 = new PeopleDemo("小红", false); pd4 = new PeopleDemo("小毛", true); pd5 = new PeopleDemo("小刘", false); pds1 = new PeopleDemo[]{pd4,pd5}; pds2 = new PeopleDemo[]{pd2,pd3}; } public static void testAdd(){ list.add(pd1); list.add(0, pd2); list.addAll(Arrays.asList(pds1)); list.addAll(1, Arrays.asList(pds2)); testIterator2(list); } public static void main(String[] args) { // TODO Auto-generated method stub init(); testAdd(); testRemove(); testSet(); System.out.println(list.containsAll(Arrays.asList(pds1))); } public static void testIterator(List list){ int lenth = list.size(); Iterator iterator = list.iterator(); while(iterator.hasNext()){ PeopleDemo pd = (PeopleDemo) iterator.next(); System.out.println(pd.toString()); } } public static void testIterator2(List list){ for(Object o : list){ PeopleDemo pdd = (PeopleDemo) o; System.out.println(pdd.toString()); } System.out.println("------------------------------"); } public static void testRemove(){ list.remove(2); testIterator2(list); list.remove(pd2); testIterator2(list); list.removeAll(Arrays.asList(pds2)); testIterator2(list); } public static void testSet(){ list.set(0, pd4); testIterator2(list); } }
这里需要说的一点是,在遍历集合类对象时使用foreach语句要比for语句简便。
相关推荐
集合框架及泛型的介绍和基础理解,方便大家了解集合框架及泛型。
java集合与泛型[参照].pdf
Java集合、泛型和枚举;Java集合、泛型和枚举;Java集合、泛型和枚举;Java集合、泛型和枚举;
Java Generics and Collections 英文版,详细描述java 泛型技术
java集合 框架 泛型,枚举,有PPT详解,并有实例
java集合与泛型.pdf
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值
03-Java集合-泛型面试题(24题)-新增
java集合与泛型[参考].pdf
JAVA集合与泛型PPT教案学习.pptx
Java编程详细教程Java集合与泛型PPT教案学习.pptx
Java中的集合类与泛型机制(Java SE 1.5中加入了泛型机制)
Java 课件 (包括基础语法,数组与语句,面向对象编程,java异常处理,java常用基础类,java集合与泛型)
java泛型集合 java集合 集合 java Collection 排序 集合排序
本次实验掌握了集合的概念、体系结构、分类及使用场景,了解了Set接口及主要实现类(HashSet、TreeSet),了解了解List接口及主要实现类(ArrayList、LinkedList、Vector),掌握ArrayList的使用及其与Vector的区别,...
学士后Java集合框架和泛型课后习题答案 希望能够帮助大家更好的学习JAVA,这些知识还是比较基础的,并没有多大难度 一起共同进步
所谓泛型,就是参数化类型。集合框架就是一个用来表示和操作集合统一的架构,包含了集合的接口与实现类。本文件通过举例来讲解泛型和集合的基础操作。
关于JAVA中的集合和泛型等的一些简单程序。
JavaGenericsBasedBankCard解决方案使用 Java 集合和泛型的银行卡详细信息持有者