java与freemarker中map的遍历

转载 2013年12月02日 10:47:01

java中部分时间都是要的是list集合,偶尔会使用到map集合,但是经常会忘记map集合的如何遍历,今天记录下:

java中的遍历

复制代码
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;


/**
 * map遍历的三种办法
 * @author us
 *
 */
public class test2
{
   public static void main(String[] args)
    {    
       /**
        * new一个map,然后添加内容
        */
       Map map=new HashMap();
       for (int i = 0; i < 10; i++)
        {
            map.put(i+"",i+"");
            System.out.println("添加"+i+"成功");
        }
       System.out.println("map大小"+map.size());
       
       /**
        * 1.把值放到一个集合力,然后便利集合
        */
       Collection c=map.values();
       Iterator it= c.iterator();
       for (; it.hasNext();)
        {
            System.out.println(it.next());
        }
       
       /**
        * 2.把key放到一个集合里,遍历key值同时根据key得到值 (推荐)
        */
       Set set =map.keySet();
       Iterator it=set.iterator();
       while(it.hasNext()){
           String s= (String) it.next();
           System.out.println(map.get(s));
       }
       
       /**
        * 3.把一个map对象放到放到entry里,然后根据entry同时得到key和值
        */
       Set set =map.entrySet();
       Iterator it=set.iterator();
       while(it.hasNext()){
           Map.Entry<String, String>  entry=(Entry<String, String>) it.next();
           System.out.println(entry.getKey()+":"+entry.getValue());
           
       }
       
    }
}
复制代码

freemarker中map集合的遍历:

复制代码
    <table width="300" border =1>
        <thead>
            <tr>
                <th width="100">来源方式</th>
                <th width="120">人数</th>
            </tr>
        </thead>
        <tbody>
            <#if clientSourceData?exists>
                <#list clientSourceData?keys as key> 
                   <tr>
                           <td>${key}</td>
                           <td>${clientSourceData.get(key)}</td>
                   </tr>
                </#list>
            </#if>
            <tr>
                   <td>合计:</td>
                   <td>${totalNum}</td>
           </tr>
        </tbody>
    </table>
复制代码

Freemarker遍历Java的Map

Freemarker遍历Java的Map
  • limenghua9112
  • limenghua9112
  • 2015年05月19日 14:32
  • 1750

freemarker循环Map<String,List<User>>对象

java代码 Map> mapListUser = transformationData(listUser); mav.addObject("mapListUser", mapListUser)...
  • yueyeqingshan
  • yueyeqingshan
  • 2016年10月27日 11:05
  • 485

Freemarker遍历键值为对象的map

由于freemarker内部方法仅支持key为string类型的map(具体原因参考文章最后),为解决key为其他对象的问题,特写此例,本实例中map的键为Integer,其他对象的键值可采用类似的方...
  • u013419791
  • u013419791
  • 2015年11月05日 18:13
  • 1035

关于freemarker中循环list中的map问题

1.从List集合取一个Map集 例如: Java代码: List list = new ArrayList(); Map map1 = new HashMap(); map1.pu...
  • u011257574
  • u011257574
  • 2015年04月20日 09:54
  • 8479

freeMarker 遍历 list,map,list<map>

List List clientSourceData=new ArrayList(); clientSourceData.add("field字段"); clientSourceData.a...
  • zengmingen
  • zengmingen
  • 2016年07月25日 16:54
  • 6683

freemarker中map的创建以及map的遍历循环

源码如下:   ${userMap["1"]}   key:${key}-value:${userMap["${key}"]}   key:${...
  • mexican_jacky
  • mexican_jacky
  • 2016年02月05日 16:09
  • 21591

Freemarker 的ftl模板遍历复杂Map的例子

Freemarker支持遍历Map,现在写一个遍历类似Map>的方式 例如现在有这样一个Map  userInfo = new HashMap(); userInfo.put("username","...
  • zkshun12
  • zkshun12
  • 2013年11月21日 15:17
  • 22169

freemarker传map<String,List<XXX>>类型,遍历list取值

${(secoendType.name)!}
  • zjutke
  • zjutke
  • 2016年03月18日 10:42
  • 2107

freemarker遍历key值为int型的map

1、加入配置信息 freemarker.ext.beans.BeansWrapper 2、遍历map(此种遍历map的方式在未加入上面配置信息时无效) ...
  • u010973746
  • u010973746
  • 2016年08月29日 17:17
  • 1334

freemarker中list列表和map集合相互嵌套小结

在做freeMarker的相关项目中,会经常遇到List列表与Map集合嵌套的问题,以此文记之。 1、map中嵌套list问题: 类似于: Map> map = new HashMap>(); ...
  • qq_25093755
  • qq_25093755
  • 2016年03月10日 14:37
  • 2985
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java与freemarker中map的遍历
举报原因:
原因补充:

(最多只允许输入30个字)