object FunctionOps {
def main(args: Array[String]){
val width = args(0).toInt
for(arg <- args(1))
processData(arg.toString(),width)
}
def processData(filename:String,width:Int){
//本地函数,也叫内部函数
def processLine(line:String){
if(line.length() > width)
println(filename + ": " + line)
}
val source = Source.fromFile(filename)
for(line <- source.getLines)
processLine(line)
}
}
Scala深入浅出实战经典:20,Scala中的本地函数与作为语言一等公民的函数详解
本文提供了一个使用Scala进行文件处理的简单示例,演示了如何读取文件中的每一行,并根据指定宽度处理每一行的内容。如果某行的长度超过指定宽度,则会打印该行及其所在文件名。

被折叠的 条评论
为什么被折叠?



