s:iterator循环两个列表的方法

本文详细记录了项目中的关键步骤和重要信息,通过实例展示了使用烂键盘进行高效记录的重要性。具体内容包括用户信息处理、留言展示及交互方式等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中用到的,现在记录一下,好记性不如烂键盘。

<s:iterator value="user"id="myu" status="status" step="1">
<div class="topic" style="width:950px;height:auto;">
<s:set value="#attr.leaveword[#attr.status.getIndex()]" name="myl" scope="request"/>
<div class="left" style="float:left;width:200px;margin-left:50px;">
<img src="<s:text name="#myu.imgurl"/>"/><br><br>
<s:property value="#myu.username"/>
</div>
<div class="right" style="float:left;width:550px;">
<s:set value="ttopic"/>
<table width="550px">
<tr><td>
<s:property value="#request.myl.content" escape="false"/>
</td></tr></table>
<br>
</div>
</div>
<hr>
</s:iterator>


 

任务描述 相关知识 迭代器简述 定义迭代器 迭代器的基本操作 while 循环遍历迭代器 列表、数组转为迭代器 迭代器常用方法表 编程要求 测试说明 任务描述 本关任务:统计各单词长度。 相关知识 为了完成本关任务,你需要掌握: 1.什么是迭代器; 2.迭代器的基本操作。 迭代器简述 在 Scala 中,迭代器(Iterator)不是一个集合,而是构建了一种访问集合的方法。当构建一个集合需要很大的开销时(比如把文件得所有行都读取到内存),迭代器就发挥了很好的作用。迭代器有两个基本操作,next 和 hasNext。next 返回迭代器的下一个元素,hasNext 用于检查是否还有下一个元素。 定义迭代器 以下代码演示了如何定义迭代器。 object ForDemo { def main(args: Array[String]): Unit = { // 定义迭代器 var it=Iterator("edu","coder",1) } } 从上述代码中可以看出,使用 Iterator(元素 1,元素 2,...)即可定义一个迭代器,另外,它还可以存放不同数据类型的元素。 迭代器的基本操作 while 循环遍历迭代器 让迭代器逐个返回所有元素最简单的方法是使用 while 循环。 object Test { def main(args: Array[String]) { // 定义迭代器 val it = Iterator("百度", "腾讯", "阿里", "淘宝") // 遍历元素 while (it.hasNext){ println(it.next()) } } } 执行结果: 百度 腾讯 阿里 淘宝 上述代码中,it.hasNext 用于判断迭代器中是否还有下一个元素,如果有,返回 true,如果没有,返回 false。it.next 则用于获取下一个具体的值。 列表、数组转为迭代器 可以使用 toIterator 方法将数组或者列表转为迭代器。 object ForDemo { def main(args: Array[String]): Unit = { // 创建集合 val list=List(1,2,3) // 创建数组 val arr=Array(1,2,3) // 转为迭代器 var it=list.toIterator var it1=arr.toIterator // 遍历迭代器it的元素 while (it.hasNext){ println(it.next()) } // 遍历迭代器it1的元素 while (it1.hasNext){ println(it1.next()) } } } 执行结果: 1 2 3 1 2 3 迭代器常用方法表 下表列出了 Scala Iterator 常用的方法方法 描述 def hasNext: Boolean 如果还有可返回的元素,返回true def next(): A 返回迭代器的下一个元素,并且更新迭代器的状态 def ++(that: => Iterator[A]): Iterator[A] 合并两个迭代器 def ++[B >: A](that :=> GenTraversableOnce[B]): Iterator[B] 合并两个迭代器 def contains(elem: Any): Boolean 检测迭代器中是否包含指定元素 def copyToArray(xs: Array[A], start: Int, len: Int): Unit 将迭代器中选定的值传给数组 def count(p: (A) => Boolean): Int 返回迭代器元素中满足条件p的元素总数 def drop(n: Int): Iterator[A] 返回丢弃前n个元素新集合 def exists(p: (A) => Boolean): Boolean 返回一个布尔值,指明迭代器元素中是否存在满足p的元素 def filter(p: (A) => Boolean): Iterator[A] 返回一个新迭代器 ,指向迭代器元素中所有满足条件p的元素 def flatMap[B](f: (A) => GenTraversableOnce[B]): Iterator[B] 针对迭代器的序列中的每个元素应用函数f,并返回指向结果序列的迭代器 def forall(p: (A) =>
最新发布
03-16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值