上次用Scala做了一道数学题,今天我们来打印一下古诗,你会发现函数式编程在数据处理中的妙用,居然只用一行代码就搞定了,不要太爽。
我们打印的打印函数要实现将输入的横排诗歌打印成从右到左的竖排版。
例如:”故人西辞黄鹤楼烟花三月下扬州孤帆远影碧空尽唯见长江天际流“
打印成:
唯 孤 烟 故
见 帆 花 人
长 远 三 西
江 影 月 辞
天 碧 下 黄
际 空 扬 鹤
流 尽 州 楼
代码:
def printPoem(txt:String, offset:Int) = txt.zipWithIndex.groupBy(_._2%offset).toArray.sortWith(_._1 < _._1).foreach( a => println(a._2.map(_._1).reverse.mkString(&#