Scala 循环语句
2016-07-12 20:59
417 查看
循环类型
Scala 语言提供了以下几种循环类型。点击链接查看每个类型的细节。while
语法
while(condition) { statement(s); }
示例
object Test { def main(args: Array[String]) { // 局部变量 var a = 10; // while 循环执行 while( a < 20 ){ println( "Value of a: " + a ); a = a + 1; } } }
输出:
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 value of a: 16 value of a: 17 value of a: 18 value of a: 19
do while
语法
do { statement(s); } while( condition );
实例
object Test { def main(args: Array[String]) { // 局部变量 var a = 10; // do 循环 do{ println( "Value of a: " + a ); a = a + 1; }while( a < 20 ) } }
输出:
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 value of a: 16 value of a: 17 value of a: 18 value of a: 19
for
语法
for( var x <- Range ){ statement(s); }
实例
a to b
object Test { def main(args: Array[String]) { var a = 0; // for 循环 for( a <- 1 to 10){ println( "Value of a: " + a ); } } }
结果:
value of a: 1 value of a: 2 value of a: 3 value of a: 4 value of a: 5 value of a: 6 value of a: 7 value of a: 8 value of a: 9 value of a: 10
a until b
以下是一个使用了 i until j 语法(不包含 j)的实例:object Test { def main(args: Array[String]) { var a = 0; // for 循环 for( a <- 1 until 10){ println( "Value of a: " + a ); } } }
结果:
value of a: 1 value of a: 2 value of a: 3 value of a: 4 value of a: 5 value of a: 6 value of a: 7 value of a: 8 value of a: 9
结果里没有10
for 遍历多个集合
在 for 循环 中你可以使用分号 (;) 来设置多个区间,它将迭代给定区间所有的可能值。以下实例演示了两个区间的循环实例:object Test { def main(args: Array[String]) { var a = 0; var b = 0; // for 循环 for( a <- 1 to 3; b <- 1 to 3){ println( "Value of a: " + a ); println( "Value of b: " + b ); } } }
结果:
Value of a: 1 Value of b: 1 Value of a: 1 Value of b: 2 Value of a: 1 Value of b: 3 Value of a: 2 Value of b: 1 Value of a: 2 Value of b: 2 Value of a: 2 Value of b: 3 Value of a: 3 Value of b: 1 Value of a: 3 Value of b: 2 Value of a: 3 Value of b: 3
for 循环集合
语法:for( var x <- List ){ statement(s); }
实例:
object Test { def main(args: Array[String]) { var a = 0; val numList = List(1,2,3,4,5,6); // for 循环 for( a <- numList ){ println( "Value of a: " + a ); } } }
结果:
value of a: 1 value of a: 2 value of a: 3 value of a: 4 value of a: 5 value of a: 6
for 循环过滤
Scala 可以使用一个或多个 if 语句来过滤一些元素。以下是在 for 循环中使用过滤器的语法。
语法:
for( var x <- List if condition1; if condition2... ){ statement(s);
实例
object Test { def main(args: Array[String]) { var a = 0; val numList = List(1,2,3,4,5,6,7,8,9,10); // for 循环 for( a <- numList if a != 3; if a < 8 ){ println( "Value of a: " + a ); } } }
结果:
value of a: 1 value of a: 2 value of a: 4 value of a: 5 value of a: 6 value of a: 7
for 使用 yield
你可以将 for 循环的返回值作为一个变量存储。语法格式如下:语法:
var retVal = for{ var x <- List if condition1; if condition2... }yield x
实例:
object Test { def main(args: Array[String]) { var a = 0; val numList = List(1,2,3,4,5,6,7,8,9,10); // for 循环 var retVal = for{ a <- numList //retVal是一个存储变量 if a != 3; if a < 8 }yield a // 输出返回值 for( a <- retVal){ println( "Value of a: " + a ); } } }
结果
value of a: 1 value of a: 2 value of a: 4 value of a: 5 value of a: 6 value of a: 7
相关文章推荐
- Oracle Containers for J2EE远程安全漏洞(CVE-2014-0413)
- Windows下Scala环境搭建
- 杀毒软件 Dr.Web Anti-virus for Windows Vista 4.44.0 Beta
- C#中循环语句:while、for、foreach的使用
- for 提取文本整行内容的方法
- dos命令for用法详解
- for命令的一些bug分析
- 批处理 FOR参数/F之tokens详解
- Lua中数字for循环实例
- 深入解读Lua中迭代器与泛型for的使用
- C#用链式方法表达循环嵌套
- 杀毒软件 Dr.Web Anti-virus for Windows Vista 4.44.0 Beta
- Nero v3.0.0.0 for LINUX 版本 下载
- for语句中的几种分隔符形式小结
- Sql存储过程游标循环的用法及sql如何使用cursor写一个简单的循环
- Shell中的for和while循环详细总结
- 非常好的for 教程, 当时我就是看这个学习for 的第1/2页
- shell脚本循环语句
- Java流程控制语句—(下)