Java基础学习笔记(九)Comparable接口、Map接口、泛型
2010-12-29 21:18
806 查看
Comparable接口
实现Comparable接口的类,对象之间可以比较大小。Comparable接口中只有一个方法
public int compareTo(Object obj);
该方法:返回 0 表示this == obj
返回正数表示this > obj
返回负数表示this > obj
实现了Comparable接口的类通过compareTo方法确定对象的排序方式。
可以通过sort()方法排序。
数据结构的选择:
衡量标准:读的效率和改的效率
Array读快写慢
Linked改快读慢
Hash两者之间
Map接口
实现了Map接口的类用来存储键-值对。Map接口的实现类有HashMap和TreeMap等。
Map类中存储的键-值对通过键来标识,所以键值不能重复。
Object put(Object key,Object value);//如果key已经存在,则返回原key的值value
Object get(Object key);
Object remove(Object key);
boolean containsKey(Object key);
boolean containsValue(Object value);
int size();
boolean isEmpty();
void putAll(Map t);
void clear();
用hashCode()方法来比较。
泛型:
增强程序的可读性和稳定性在定义集合时同时定义集合中对象的类型
示例:
import java.util.*;
public class TestArgsWords{
private static final int ONE = 1;
public static void main(String[] args){
Map<String, Integer> m =new HashMap<String, Integer>(); //泛型
for(int i = 0;i < args.length;i++){
int freq = (Integer) m.get(args[i]) == null ? 0:(Integer) m.get(args[i]);
m.put(args[i], freq + 1);
}
System.out.println(m.size() + " distinct words detected:");
System.out.println(m);
}
}
可以在定义Collection的时候指定
也可以在循环时使用Iterator指定
相关文章推荐
- Java基础学习笔记(九)Comparable接口、Map接口、泛型
- 黑马程序员--Java基础学习笔记【集合-List、泛型】
- Java学习笔记之泛型(四):泛型接口
- JAVA学习笔记(二十三)-Comparable接口和Comparator接口
- Java基础学习笔记之泛型
- Java入门基础_学习笔记[5]_接口与内部类
- C\C++ 程序员从零开始学习Android - 个人学习笔记(八) - java基础 - 继承、抽象类、接口、内部类(待续)
- 黑马程序员—15—java基础:有关泛型的学习笔记和学习心得体会
- Java基础学习笔记十二 类、抽象类、接口作为方法参数和返回值以及常用API
- Java基础学习笔记09——(final关键字,多态,抽象类,接口)
- Java基础学习笔记之七(3)--Map接口
- 黑马程序员—Java基础加强学习笔记之泛型
- Java基础学习笔记之七(4)--Iterator&Comparable
- Java基础学习笔记(七)Set接口及其实现子类
- Java基础学习笔记(八)List接口
- 【安卓学习笔记】JAVA基础Lesson12-接口
- 【Java学习笔记】Comparable接口的实现和使用
- java基础学习笔记之泛型
- Java基础学习笔记【08】泛型限定、泛型操作
- 黑马程序员--Java基础学习笔记之抽象类和接口、内存结构分析、Java APIs