Map m = new HashMap();
第一种:直接变量value
Collection c = m.values();
Iterator io = c.iterator();
While(io.hasNext()){…io.next()}
第二种:同过key获得value
Collection c = m.keySet();
Iterator io = c.iterator();
While(io.hasNext()){…m.get(io.next())}
第三种:获得map的整体对象 Map.Entry
Collection c = m.entrySet();
Iterator io = c.iterator();
While(io.hasNext()){
Map.Entry me = (Entry)io.next();
Me.getValue(); Me.getKey();
}
(5)如果要实现容器排序 (容器里面装的类型是对象类型)
必须要实现Comparable接口 实现 int compareTo(T)方法
(6)泛型:编译期间检查传入容器的类型如何泛型规定的类型不一致则编译不通过
(八)IO流:
JavaSe基础总结
// 以后写代码 尽量用多态
----读取字节----
InputStream is = new FileInputStream (“c://a.txt”);
FileInputStream的文件路径必须存在 否则抛出FileNotFoundException
OutputStream os = new FileOutoutStream(“c://dddd.txt”);
注意可以有两个参数的重载的构造方法
FileOutputStream(File f ,Boolean append)第二个参数表示是否追加内容
FileOutoutStream文件的路径可以不存在 会给你创建对应的文件
----读取字符----
FileReader fr = new FileReader(“c://f.txt“);
FileWriter fw = new FileWriter (“c://f.txt“);不存在路径也会创建
----缓存流(处理流)
BufferedReader br = new BufferedReader(Reader in);
BufferedWriter br = new BufferedWriter(Writer out);
----直接读取字节数组----
ByteArrayInputStream bis = new ByteArrayInputStream(byte[] b);
重载的方法new ByteArrayInputStream(byte[] b ,start, length);
----读取基本数据类型----
DataInputStream dis = new DataInputStream(InputStream is);
注意:读取数据的时候要按照写入文件数据的顺序来读取
----序列化----
ObjectInputStream ois = new ObjectInputStream(InputStream is);
注意:要序列化的对象必须实现serializable接口(标识该对象可序列化)
----打印流----
PrintStream ps = System.out; //打印字节
PrintWriter pw = new PrintWriter(Writer out);//打印字符