`
齐晓威_518
  • 浏览: 618688 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

HashMap<String,HashMap<String,String>> 的多级映射 .

 
阅读更多

package namespace;
import java.util.*;
class Student implements Comparable<Student>
{
 private String id;
 public String name;
 public Student(String id,String name)
 {
  this.id=id;
  this.name=name;
 }
 public String getName()
 {
  return this.name;
 }
 public String getId()
 {
  return this.id;
 }
 public int hashCode()
 {
  return this.name.hashCode()+this.id.hashCode();
 }
 public boolean equals(Object obj)
 {
  Student student=(Student)obj;
  return this.name.equals(student.name) && this.id.equals(student.id);
 }
 public int compareTo(Student stu)
 {
  int num=this.id.compareTo(stu.id);
  if(num==0)
   return this.name.compareTo(stu.name);
  return num;
 }
 public String toString()
 {
  return id+"..."+name;
 }
 
}
public class ManyMap {
 public static void main(String args[])
 {
  /*   这是一个一对多的映射,就是一个学样对应多个班级,一个班级又对应多个学生
  HashMap<String,HashMap<String,String>>nyist=new HashMap<String,HashMap<String,String>>();//定义nyist学校名
  HashMap<String,String>jsjx=new HashMap<String,String>();//定义班级名
  HashMap<String,String>ysx=new HashMap<String,String>();//定义第二个班级名
  nyist.put("jsjx",jsjx);
  nyist.put("ysx",ysx);//将班级加到学校里
  //下面向班里面加人
  jsjx.put("001","boy");
  jsjx.put("002","girl");
  jsjx.put("003","xiaozhang");
  ysx.put("001","xiaoli");
  ysx.put("002","hujintao");
  ysx.put("003","wenjiabao");
  //下面找出jsjs里面的所有的人
  HashMap<String,String>classes=nyist.get("jsjx");
  Set<Map.Entry<String,String>>entryset=classes.entrySet();
  
  for(Iterator<Map.Entry<String,String>> it=entryset.iterator();it.hasNext();)
  {
   Map.Entry<String,String> me=it.next();
   System.out.println(me.getKey()+"..."+me.getValue());
  }
  
  //下面找出nyist 里面所有的人
  Set<Map.Entry<String,HashMap<String,String>>>outentry=nyist.entrySet();
  for(Iterator<Map.Entry<String,HashMap<String,String>>>it=outentry.iterator();it.hasNext();)
  {
   Map.Entry<String,HashMap<String,String>> out=it.next();//得到it.next()取得的班级
   System.out.println("班级:"+out.getKey());
   HashMap<String,String>inner=out.getValue();//得到班级的hashmap
   Set<Map.Entry<String,String>>clainner=inner.entrySet();
   //System.out.println(clainner);
   sop(clainner);
  }
 }
 public static void sop(Set<?>list)
 {
  for(Iterator<?>it=list.iterator();it.hasNext();)
  {
   System.out.println(it.next());
  }
 }*/
  //下面不用HashMap<String,String> 来表示学生了,因为在实际开发中,学生要被封装成类,因为定义在Student 类中
  HashMap<String,List<Student>>nyist = new HashMap<String,List<Student>>();//定义学校,里面有班级和学生集合的映射,一个班级对应一个学生集合
  List<Student>jsjx=new ArrayList<Student>();
  List<Student>ysx=new ArrayList<Student>(); //定义两个学生类,也就是两个班级里的人数
  nyist.put("jsjx",jsjx);
  nyist.put("ysx",ysx);//将两个班级放到学校里面去
  jsjx.add(new Student("001","zhangsan"));
  jsjx.add(new Student("002","zhaolin"));
  ysx.add(new Student("0032","zhau"));
  ysx.add(new Student("1230","ahde"));
  Set<Map.Entry<String,List<Student>>> entrykey = nyist.entrySet();
  for(Iterator<Map.Entry<String,List<Student>>>it=entrykey.iterator();it.hasNext();)
  {
   Map.Entry<String,List<Student>> item=it.next();
   System.out.println("班级:"+item.getKey());
   List<Student>stu=item.getValue();
   /*for(Iterator<Student>iterator=stu.iterator();it.hasNext();)
   {
    System.out.println(it.next());
   }*/
   show(stu);
  }
 }
 public static void show(List<?> list)
 {
  for(Iterator<?>it=list.iterator();it.hasNext();)
  {
   System.out.println(it.next());
  }
 }
 
}

分享到:
评论

相关推荐

    springboot 基础简易实例, maven项目

    public String helloHtml(HashMap&lt;String, Object&gt; map) { map.put("hello", "欢迎进入HTML页面"); return "/index"; } } --------------------------- HelloWorldController --------------------------- ...

    android mars视频代码 Tea_marsListActivity

    ArrayList&lt;HashMap&lt;String,String&gt;&gt; list = new ArrayList&lt;HashMap&lt;String,String&gt;&gt;(); HashMap&lt;String,String&gt; map1 = new HashMap&lt;String,String&gt;(); HashMap&lt;String,String&gt; map2 = new HashMap&lt;String,String&gt;...

    Android课件

    HashMap&lt;String, String&gt; map1 = new HashMap&lt;String, String&gt;(); HashMap&lt;String, String&gt; map2 = new HashMap&lt;String, String&gt;(); HashMap&lt;String, String&gt; map3 = new HashMap&lt;String, String&gt;(); map1.put("name...

    List转换为List

    Map&lt;String, Object&gt; map = new HashMap&lt;String, Object&gt;(); map.put("ACTID", announcementBean.getActid()); map.put("ACTTITLE", announcementBean.getActtitle()); map.put("ACTCON", announcementBean....

    java-echart.js柱状图、饼状图、折线图

    Map&lt;String,Object&gt; map = new HashMap&lt;&gt;(); map.put("name", "山东"); map.put("value", 200); map.put("id", 1); Map&lt;String,Object&gt; map1 = new HashMap&lt;&gt;(); map1.put("name", "江苏"); map1....

    ComparatorListObject.java

    Map&lt;String, String&gt; map1 = new HashMap&lt;String, String&gt;(); map1.put("catagory", "三方存管变更"); map1.put("catagoryid", "3411225"); map1.put("seriesdata", "5"); list.add(map1); Map&lt;String, String...

    怎样遍历一个HashMap?

    &lt;br&gt;&lt;br&gt;}&lt;br&gt;&lt;br&gt;或者:&lt;br&gt;&lt;br&gt;Map map = new HashMap();&lt;br&gt;&lt;br&gt;for (Iterator iter = map.keySet().iterator(); iter.hasNext();) {&lt;br&gt;&lt;br&gt; Object key = iter.next();&lt;br&gt;&lt;br&gt; Object val = map.get(key);&lt;br&gt;...

    soap-builder.jar,工具包,可解析wsdl

    Map&lt;String,List&lt;Map&lt;String,String&gt;&gt;&gt; bindMap = new HashMap&lt;String,List&lt;Map&lt;String,String&gt;&gt;&gt;(); List&lt;Map&lt;String,String&gt;&gt; optList = new ArrayList&lt;Map&lt;String,String&gt;&gt;(); for(int j=0;j&lt;operationList....

    JSON入门Java篇-4-用HashMap来构建JSON.rar

    HashMap&lt;String, Object&gt; jsonMap = new HashMap&lt;&gt;(); jsonMap.put("name", "张三"); jsonMap.put("age", 30); jsonMap.put("isStudent", false); ``` 3. 转换HashMap为JSON 使用Gson库将HashMap转换为JSON字符串: ...

    集成springboot报表

    Map&lt;String, Object&gt; parameters = new HashMap&lt;&gt;(); parameters.put("REPORT_DATA_SOURCE", dataSource); // 数据源 JasperPrint jasperPrint = JasperFillManager.fillReport(compiledReportStream, parameters);...

    jsp中的购物车案例

    cart = new HashMap&lt;&gt;(); session.setAttribute("cart", cart); } if (cart.containsKey(item.getId())) { item.setQuantity(cart.get(item.getId()).getQuantity() + item.getQuantity()); } cart.put(item....

    逆波兰式表达式计算引擎

    HashMap&lt;String,Object&gt; maps = new HashMap&lt;String,Object&gt;(); HashMap&lt;String,Object&gt; kvmap = new HashMap&lt;String,Object&gt;(); maps.put("expression", "(((AA*-BB)*CC+(AA*-BB)/CC)+((AA*(-BB))*CC+(AA*-...

    支支持处理asp的web service调用

    Map&lt;String, Object&gt; map = new HashMap&lt;String, Object&gt;(); map.put("serSupplier", "afasfasf"); map.put("callTime", "ffffffffff"); Map&lt;String, WebServiceResultBean&gt; rs = ser.invoke("EOMS", ...

    json字符串转成 Map/List

    Map&lt;String, Object&gt; itemMap = new HashMap&lt;&gt;(); for (String key : obj.keySet()) { itemMap.put(key, obj.get(key)); } list.add(itemMap); } ``` 以上三种库各有优缺点,Gson和Jackson性能较好,org....

    Android的卡片视图

    private ArrayList&lt;HashMap&lt;String, Object&gt;&gt; list; // 用来控制CheckBox的选中状况 private ArrayList&lt;Boolean&gt; isSelected; // 上下文 private Context context; // 用来导入布局 private ...

    json解析类

    ArrayList&lt;HashMap&lt;String, Object&gt;&gt; list = new ArrayList&lt;&gt;(); HashMap&lt;String, Object&gt; hashMap; try { arr = new JSONArray(jsonString); for (int i = 0; i &lt; arr.length(); i++) { hashMap = new ...

    JNI处理hashmap,string等对象的操作

    在`JNI处理hashmap.txt`中,你可能会找到关于如何遍历HashMap,添加、删除和查找元素的具体步骤。`JNI对象的操作.txt`可能会涵盖更多基本对象的创建和访问,而`JNI字符串处理.txt`将详细讲解String对象的各种操作。`...

    ibatis 用HashMap解决resultClass映射

    Map&lt;Integer, String&gt; result = new HashMap&lt;&gt;(); for (int i = 0; i &lt; testList.size(); i++) { Map&lt;String, Object&gt; tmp = testList.get(i); result.put((Integer) tmp.get("ID"), (String) tmp.get("NAME"));...

    Java JSON解析依赖JAR(JSON LIB)

    ArrayList&lt;HashMap&lt;String, String&gt;&gt; dataList = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;(); HashMap&lt;String, String&gt; new_data = new HashMap&lt;String, String&gt;(); new_data.put("OBDID", "111111"); new_data....

    java 读取csv 并转为Map<String,Object>

    通过引用【opevcsv】依赖,逐行读取数据 并转为Map&lt;String,Object&gt;格式,后续可以通过BeanUtil.MaptoBean()方法将map转为你需要的bean对象; csv文件必须带表头,bean对象命名符合驼峰格式; 通过此方法可以快速的将...

Global site tag (gtag.js) - Google Analytics