java map在JSTL EL中的小應用--遍歷Map<>泛型

準 備 數 據 (本身準備吧少年,考驗你時候到了!!)java

 1  /**    結構示意圖:
 2   類型:  List集合    map對象    LIst集合   Person類對象 String name ; int age
 3 
 4 
 5       mList    ->    map()    ->pList     ->Person p1 坤哥 24
 6                                           ->Person p2 鯤哥 104
 7                              ->pList2
 8                                           ->Person ps1 王小三 24
 9                                           ->Person ps2 王小二 24
10                ->    map2()
11                              ->pList3
12                                           ->Person pr1 張咪咪  19
13                                           ->Person pr2 趙咪咪  21
14                             - >pList4
15                                           ->Person pd1 謝廣坤  54
16                                           ->Person pd2 趙四    56  (多是吧)
17 */

 

Map 所 需 包 :(只限JSTL中)spa

 

java.util.HashMapcode

 

java.util.Map對象

 

常 見 Map 指 令 清 單:blog

1. 建立mapit

Map<String,List<Person>> map = new HashMap<String,List<Person>>();

眼花了?那建立map集的會更眼花了。table

List<Map<String,List<Person>>> mList = new ArrayList<Map<String,List<Person>>>();

其實結構確實不難的。(O - O)```class

2. map添加數據test

map.put("謝廣坤",54)

3. 獲取keyList

 map.keySet()   和   map.entrySet() 

本處用keySet()。由於我菜,用entrySet()遍歷的數據不太正常,哪天解決了再寫吧。

4. 獲取value

 map.values()   注意 ‘ s ’

 

我 的 主 要 代 碼 :

1. 數據準備

//以謝廣坤爲例
List<Person> pList4 = new ArrayList<Person>();
Person pd1 = new Person("謝廣坤",54);
Person pd2 = new Person("趙四",56);
pList4.add(pd1);pList4.add(pd2);
//。。。
Map<String,List<Person>> map2 = new HashMap<String,List<Person>>();
map2.put("pList4",pList4);
//。。。
List<Map<String,List<Person>>> mList = new ArrayList<Map<String,List<Person>>>();
mList.add(map2);

 

2. 輸出全部數據

<c:forEach items="${mList}" var="m" varStatus="id">
        <h2>第${id.count}個map</h2>
    <c:forEach items="${m.keySet()}" var="k">
    <h3>List的名字是:<c:out value="${k}"></c:out></h3>
        <c:forEach items="${m.values()}" var="l">
            <c:forEach items="${l}" var="p">
                <table border="1px dotted blue">
                    <tr>
                        <th>姓名</th>
                        <th>年齡</th>
                    </tr>
                    <tr>
                        <td>${p.name}</td>
                        <td>${p.age}</td>
                    </tr>
                </table>
                <br>
            </c:forEach>
        </c:forEach>
    </c:forEach>
</c:forEach>

 

3. 下面咱們來輸出年齡大於50的鄉村愛情人物

<c:forEach items="${mList}" var="m">
    <c:forEach items="${m.values()}" var="l">
        <c:forEach items="${l}" var="p">
            <c:if test="${p.age>50}">
                <table border="2px dotted blue">
                <tr>
                    <th>姓名</th>
                    <th>年齡</th>
                </tr>
                <tr>
                    <td>${p.name}</td>
                    <td>${p.age}</td>
                </tr>
            </table>
            </c:if>
        </c:forEach>
    </c:forEach>
</c:forEach>

 

結 果 樣 子 :

大概就是這個樣子的

 

相關文章
相關標籤/搜索