标签:collection 设计程序 practice 关键词 文本文件
1.描述HashMap内部实现原理。
2.描述Hashset和HashMap的区别。
3.年级的集合使用Map的嵌套实现。
10班,每个班50人。
4.编程实现文本文件的复制。合理设计程序,得到缓冲区的大小的高效区间。
提示缓冲区设置1k开始,不超过10M。
----------------------------------------------------------------------
1.HashMap是K-V对,hashmap底层实现了散列算法,是一种基于关键词的搜索算法,提升hashmap查找速度。hashmap通过hashcode得到一个地址然后equals比较链表中各元素,同时取出对应value值。
2.hashset用hashmap实现Key,实现了set接口,继承collection接口
HashMap:实现map接口,用hash机制存储,不重复,set和map是同一级的。
3.
package practice; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; /* **年级的集合使用Map的嵌套实现。 *10班,每个班50人。 */ public class MapDemo { public static void main(String[] args) { // TODO Auto-generated method stub //班级集合 Map<Integer , Map<String,String>> classes=new HashMap<Integer,Map<String,String>>(); //名单集合 Map<String,String> names=null; int no=1; //添加班级和班级里面的名单 for(int i=0;i<10;i++){ names=new HashMap<String, String>(); classes.put(i,names); for(int j=0;j<50;j++){ names.put(i+"."+j ,"tom"+no); no++; } } //遍历班级集合EntrySet for(Entry<Integer,Map<String,String>> entry : classes.entrySet()){ //班号 Integer classno=entry.getKey(); //班级成员 Map<String,String> banji=entry.getValue(); //遍历全部人员 for(Entry<String,String> entry0 : banji.entrySet()){ //学号 String stuno=entry0.getKey(); //姓名 String nameno=entry0.getValue(); System.out.println(classno + " ===> " + stuno + " --> " + nameno) ; } //使用keySet遍历 for(Integer classnum : classes.keySet()){ Map<String,String> map=classes.get(classnum); for(String StuN : map.keySet()){ String name=map.get(StuN); // String Num=map.ge } } } } }
标签:collection 设计程序 practice 关键词 文本文件
原文地址:http://wwywinnie.blog.51cto.com/10421959/1784893