JAVA第14章Java泛型与收集API要点分析.pptVIP

  • 6
  • 0
  • 约2.44千字
  • 约 29页
  • 2016-07-31 发布于湖北
  • 举报
第14 章 Java泛型与收集API;14.1 Java泛型 ---参数化类型;【例14-1】续;泛型在使用中的规则和限制: (1)泛型的类型参数只能是类类型(包括自定义类),不能是简单类型。(简单类型:int 对象类型:int:Integer String?对象类型) (2)泛型的类型参数可以有多个,如MapK,V。 (3)泛型的参数类型可以使用extends语句。例如,T extends Number,extends并不代表继承,它是类型范围限制,表示T≤Number。 (4)泛型的参数类型还可以是通配符类型。例如,ArrayList? extends Number,表示Number范围的某个类型,其中,“?”代表未定类型。 ;14.1.2 关于ComparableT与ComparatorT接口;【例14-2】 让User对象按年龄排序;2. ComparatorT接口;假设User类没有实现Comparable接口,可采用UserComparator比较算子提供的方法实现排序 public class UserComparator implements ComparatorUser { public int compare(User obj1, User obj2) { return obj1.getAge( ) - obj2.getAge( ); }? public static void main(String[ ] args) { User[ ] users = { new User(mary, 25), new User(John, 40) }; Arrays.sort(users, new UserComparator( )); // 用比较算子排序 for (int i = 0; i users.length; i++) System.out.println(users[i]); } } ;14.2 Collection API简介;(1)Collection接口 ;Iterator接口 ;(2) Set接口 ;例14-3 Set接口用法 ;表14-2 ListE接口中定义的常用方法 ;1.ArrayList类和LinkedList类; static void output(ArrayList? extends Number a) { Iterator p = a.iterator( ); while (p.hasNext( )) { System.out.print(p.next( )+ , ); } System.out.println( ); } } ;【例14-5】 ArrayList和LinkedList的使用测试。;2.Vector类和Stack类; 除了支持List接口中定义的方法外,向量还有从早期JDK保留下来的一些方法。 void addElement(E elem):在向量的尾部添加元素。 void insertElementAt(E obj, int index):在指定位置增加元素。 E elementAt(int index):获取指定位置的元素。 void setElementAt(E obj, int index):设置index处元素为obj。 boolean removeElement(E obj):删除首个与obj相同的元素。 void removeElementAt(int index):删除index指定位置的元素。 void removeAllElements():清除向量序列所有元素。 void clear():清除向量序列所有元素。;堆栈(Stack)是一种特殊的数据结构,其特点是后进先出。 堆栈的常用操作是进栈和出栈, push()方法可将一个对象压进栈中 pop()方法将弹出栈顶元素作为返回值。 peek()方法可获取栈顶元素但不从栈中删除它 empty()方法可判断栈是否为空。 ;14.3 Collections类;【例14-7】 列表元素的排序测试;class Comparator1 implements ComparatorString { public int compare(String s1, String s2) { s1 = s1.toLowerCase( ); //字符串全部字符换小写 s2 = s2.toLowerCase( ); retur

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档