最近一段时间的项目都是在Play这个框架上进行开发的,挺强大的,但不足之处也挺多的。今天分享下play中强大的标签,遍历list,map类型的数据的用法。
-
遍历单纯的list数据,例如:List<People> peoples;
#{list peoples,as:'people'} //peoples为list对象,people为实体变量名 ,name则为实体相对应的属性值
${people.name}
#{/list}
-
遍历list中泛化的map类型,例如:List<Map<People>> peoples;
#{list peoples,as:'people'} //peoples为list对象,people为实体变量名 ,name则为实体相对应的属性值
#{list people,as:'map'}${map.value.property}#{/list}
//第二个list将people再次转换,map取值则像正常的取值,value为map的value,可是对象类型,property则为对象类型的属性值
#{/list}
-
遍历单纯的Map类型,例如:Map<id,People> people;
//如果知道map的key值,则可以直接通过一下方式获取:
${people.get(key).name}
//如果是要遍历一个map,同样适用list标签
#{list people,as:'peo'}
${peo.value.name} //peo为map变量,value为key的值,name为属性值
#{/list}
//如果id是一个对象的话,获取其对象的值则可以这样:
#{list people,as:'peo'}
${peo.key.name} //peo为map变量,key为对象,key为实体对象,name为属性值
#{/list}
-
遍历map与list的组合,例如:Map<id,List<People>> people;
//知道ID的情况下可以这样,通过get方法获取对象
#{list people.get(id),as:'peo'}
${peo.name}
#{list}
//如果people是多个map对象,则可以
#{list people,as: 'map'}
#{list map.value,as:'people'
-
set,if,break标签的使用:
//模拟遍历list时的计数器
#{set count:0}//设置变量count
#{list data,as:'li'}
<h1>${count}</h1>
#{if count == 2}
<% break %> //跳出
#{/if}
#{ifelse count == 3}
<h1>${count}</h1}
#{/ifelse}
#{else}
<h1>${count}</h1>
#{/else}
#{set count:count+1}//自增
#{/list}
分享到:
相关推荐
同时,对Java集合框架(如List、Set、Map)的熟练运用,以及对Java Swing或JavaFX(用于创建桌面应用,有时也会用到图形生成)的了解也是制作图表的前提。 2. **Web开发框架**:在Java Web中,常见的框架有Spring ...
集合库是Scala的一大亮点,它提供了丰富的数据结构和操作,如List、Set、Map以及各种转换和聚合操作。这些操作符通常具有函数式风格,如map、filter、fold等,使得处理集合数据非常方便。 此外,Scala还有强大的...
还会深入到高级主题,比如类型系统、类型类、宏、未来和承诺(Futures and Promises)以及Scala生态系统中的其他重要库和框架,如Play Framework用于构建Web应用,Spark用于大数据处理等。 总的来说,"Scala编程...
7. **集合库**:Scala的集合库非常强大,提供了各种高效的集合实现,如List、Set、Map等,并且集成了函数式编程的操作。 8. **Option类型**:Option是Scala处理null安全的一种方式,它将可能的null值封装在一个容器...
它内置了Map、Set、List等集合类型,并提供了丰富的函数式操作。 4. **面向对象编程**:Scala是完全面向对象的语言,所有的值都是对象,包括函数。它支持类、接口、继承和多态,同时也引入了特质(trait),为实现...
1. **基本语法与数据类型**:Scala有丰富的数据类型,包括基本类型(如Int、Double、Boolean等)和复合类型(如Array、List、Set、Map)。此外,Scala还支持模式匹配,这是其语法的一大特色。 2. **类与对象**:...
4. **集合框架**:Scala的集合库强大而灵活,提供了多种数据结构(如List、Set、Map)和操作方法,支持高效的并行计算。书中会讲解如何使用这些集合,以及如何利用其函数式特性来编写简洁的代码。 5. **模式匹配**...
6. **集合库**:Scala的集合库是一大亮点,它包含丰富的数据结构(如List、Set、Map)和操作,支持高效的操作和转换。2.11版本对集合库进行了进一步优化,提高了性能。 7. **类型类**:Scala的类型类是一种实现多态...
5. **集合库**:Scala的集合库是一大亮点,它提供了丰富的数据结构和操作,如`List`、`Set`、`Map`,以及各种转换和函数操作。这些工具使得处理数据变得高效且简洁。 6. **并发编程**:Scala提供了`Actor`模型和`...
6. **集合库**:Scala的集合库是其一大亮点,它提供了丰富的数据结构,如List、Set、Map等,并且这些集合都具有高效的函数式操作。 7. **与Java的互操作性**:由于Scala运行在JVM上,所以可以直接调用Java库,反之...
- **列表、数组和映射**:详细介绍Scala中List、Array和Map等基本数据结构的使用方法。 - **高级数据结构**:介绍Scala中高级数据结构,如Tree、Set等,并讲解它们的实现原理。 5. **函数式编程** - **函数作为...
3. 字符串中存在某些词:`wordlist = ["scala", "akka", "playframework", "sbt", "typesafe"]; tweet = "This is an example tweet talking about scala and sbt."; print(map(lambda x: x in tweet.split(), ...
1. **不可变集合**:Scala 提供了一系列不可变数据结构,如 List、Set 和 Map。这些数据结构一旦创建就不能更改,这对于函数式编程尤为重要,因为它有助于避免副作用并简化并发问题。 2. **模式匹配**:Scala 中的...
Scala提供了一系列不可变的数据结构,如List、Set和Map。这些数据结构在函数式编程中非常关键,因为它们保证了在任何时候都不会改变其状态,从而避免了并发编程中的许多问题。 3. pattern matching: Scala的模式...
m_list.InsertString(m_list.GetCount(),strfilename);//获取文件名 m_list.SetCurSel(m_list.GetCount()-1); } 双击播放,进入代码,添加如下 void CMp3Dlg::Onopen() { CString strfilename; int index=m_...
4. **集合框架:** Scala 的集合库非常强大,包括 List, Set, Map 等,学习如何操作它们以及使用惰性计算。 5. **模式匹配:** Scala 中的模式匹配允许解构复杂数据结构,是其语法的一个独特特性。 6. **Actor模型...
- **集合类型**: Scala 提供了 List, Set, Map, Array, Vector 等集合类型,它们都具有丰富的操作方法。 - **视图**: 视图是一种延迟计算的机制,直到真正访问时才进行计算。 - **并行集合**: Scala 的并行集合...