在阅读了《Scala InProgramming》一文中学习了Scala语言的内建控制结构,为了巩固学习的内容,特意以写了一个小程序:打印标准乘法表,作为这一部分的完结。
1、打印标准乘法表的实现类
class PrintMulTable(start: Int,end: Int) { val begin = this.start val finish = this.end //以序列形式返回一行乘法表 def makeRowSeq(row: Int) = for (col <- begin to finish) yield { val prod = (row * col ).toString val padding = " " * (4 - prod.length) padding + prod } //以字符串形式返回一行乘法表 def makeRow(row: Int) = makeRowSeq(row).mkString //以字符串形式返回乘法表,每行记录占一行字符串 def multiTable() = { val tableSeq = for(row <- begin to finish) yield makeRow(row) tableSeq.mkString("\n") } }
2、测试实例
object PrintMultiTableTest extends App{ println(new PrintMulTable(1,10).multiTable()) }
3、测试结果
见附件中的图片