---------------------- android培训、java培训、期待与您交流! ----------------------
Java API
API的概念(Application Programming Interface)应用程序接口
J2SDK所提供的容器API位于java.util包内。
Collection接口:定义了存取一组对象的方法,其子接口Set和List分别定义了存储方式。
重复指的是:对象equals相等。
Set接口中的数据对象没有顺序且不可以重复。
List接口中的数据对象有顺序且可以重复。
Map接口定义了存储“键(key)值(value)映射对”的方法。
HashSet是实现Set接口类
LinkedList和ArrayList是实现List接口类
HashMap是实现Map接口类
Collection 存储的是对象
Collection collection = new ArrayList();
//多态,父类引用指向子类对象,利于扩展,不会因为改变子类对象而改变调用的方法。
子类接口继承父类接口,实现子类也就相当于实现父类。
Iterator接口
所有实现了Collection接口的容器类都有一个iterator方法返回一个实现了Iterator接口的对象。
对象实现的方法:
boolean hasNext();//判断是否还有下一个,返回布尔值
object next();//取出下一个对象
void remove();
ArrayList基础是数组
LinkedList基础是链表
HashSet基础是Hash表
例:
import java.util.*;
public class Test{
public static void main(String[] args){
Collection c=new HashSet();
c.add(new Name("f1","l1"));
c.add(new Name("f2","l2"));
c.add(new Name("f3","l3"));
Iterator i = c.iterator();//调用hashSet里的iterator方法,返回对象,存储在i里
while(i.hasNext()){
//next()的返回值为Object类型,需要转换为相应类型
Name n = (Name)i.next();
System.out.println(n.getFirstName()+" ");//firstName封装了
}
}
}
HashSet类
Set s = new HashSet();//相同的元素不会被加入,前提是重写equals和HashCode方法
List常用算法
类java.util.Collections 提供了一些静态方法实现了基于List容器的一些常用算法。
Collections.shuffle();//随机排序
Collections.reverse();//逆序
Collections.sort();//排序(从低到高)
Comparable接口
根据什么确定容器中对象的“大小”顺序?
所有可以“排序”的类都实现了java.lang.Comparable接口,Comparable接口中只有一个方法
public int comparaTo(Object obj);
该方法: 返回0表示this==obj
返回正数表示this>obj
返回负数表示this<obj
实现了Comparable接口的类通过实现comparaTo方法从而确定该类对象的排序方式。
例:(重写compareTo方法)
public int compareTo(Object o){
Member m = (Member)o;
int i = score.compareTo(m.score);
return i;
}
Map接口
Map m = new HashMap();
对象方法:
Object put(Object key,Object value);//相当于添加,以键值对的形式
---------------------- android培训、java培训、期待与您交流! ----------------------