Scala 模式匹配初步入门
2015-12-14 19:49
148 查看
1、代码
package com.yy.base
/**
* Scala 模式匹配初步
*
*/
object PatternMatchTest extends App {
println("------基本用法------")
val data = 2
data match{
case 1 => println("1......")
case 2 => println("2......")
case _ => println("not matched......")
}
println("------添加守卫条件------")
for(i <-1 to 10){
i match{
case 4 => println("4......")
case num if(num%4==0) => println(num + "被4整除")
case num if(num%5==0) => println(num + "被5整除")
case 10 => println("10......")
case _ =>
}
}
println("------foreach------")
"Hello Scala".foreach {
x => println(
x match{
case ' ' => "空格"
case ch => "字符:" + ch
}
)
}
}2、结果
------基本用法------
2......
------添加守卫条件------
4......
5被5整除
8被4整除
10被5整除
------foreach------
字符:H
字符:e
字符:l
字符:l
字符:o
空格
字符:S
字符:c
字符:a
字符:l
字符:a
从结果可以看出:scala 模式匹配不同于java中的switch:需要使用break控制,而scala中不需要。
package com.yy.base
/**
* Scala 模式匹配初步
*
*/
object PatternMatchTest extends App {
println("------基本用法------")
val data = 2
data match{
case 1 => println("1......")
case 2 => println("2......")
case _ => println("not matched......")
}
println("------添加守卫条件------")
for(i <-1 to 10){
i match{
case 4 => println("4......")
case num if(num%4==0) => println(num + "被4整除")
case num if(num%5==0) => println(num + "被5整除")
case 10 => println("10......")
case _ =>
}
}
println("------foreach------")
"Hello Scala".foreach {
x => println(
x match{
case ' ' => "空格"
case ch => "字符:" + ch
}
)
}
}2、结果
------基本用法------
2......
------添加守卫条件------
4......
5被5整除
8被4整除
10被5整除
------foreach------
字符:H
字符:e
字符:l
字符:l
字符:o
空格
字符:S
字符:c
字符:a
字符:l
字符:a
从结果可以看出:scala 模式匹配不同于java中的switch:需要使用break控制,而scala中不需要。
相关文章推荐
- Windows下Scala环境搭建
- 用JavaScript对JSON进行模式匹配 (Part 2 - 实现)
- Windows7下安装Scala 2.9.2教程
- 解析PHP中的正则表达式以及模式匹配
- JavaScript 通过模式匹配实现重载
- Lua中的string库和强大的模式匹配学习笔记
- Lua字符串模式匹配函数小结
- java模式匹配之蛮力匹配
- MySQL 字符串模式匹配 扩展正则表达式模式匹配
- XML 文件解析--含Unicode字符的XML文件
- 分分钟掌握快速排序(Java / Scala 实现)
- Scala极速入门
- Spark初探
- Scala实现REST操作
- Scala method call syntax
- 关于Scala多重继承的菱形问题
- Scala 高阶函数(high-order function)剖析
- Scala Monad Design Pattern
- Spray.io搭建Rest服务
- Spray.io搭建Rest — 支持Twirl模板并部署