scala编程实例

来源:互联网 发布:ubuntu gnome英伟达 编辑:程序博客网 时间:2024/05/17 19:14

http://blog.csdn.net/u011225629/article/details/47660059

1.文本内容按照行内容倒置,但是每一行的内容不变

import scala.io.Sourceimport java.io.PrintWriterobject ReverseLines {  def main(args: Array[String]): Unit = {    val filename="File.txt"    val RefileName="ReverseFile.txt"    val source=Source.fromFile("src\\"+filename)    lazy val ReSource=Source.fromFile("src\\"+RefileName)    lazy val pw = new PrintWriter("src\\"+RefileName)    val linesIterator=source.getLines()    val linesRecord=linesIterator.toArray    val reverseRecord=linesRecord.reverse    reverseRecord.foreach {      line =>pw.write(line+"\n")    }    pw.close()    println(filename+"文件内容如下:")    linesRecord.foreach (line=>println(line))    println(RefileName+"文件内容如下:")    ReSource.getLines().foreach(line=>println(line))  }}
File.txt文件内容如下:Tue Nov 08 19:39:03 CST 2016hadoop sknf ksdf klsng sklghklakldf aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbccc cccccccccccccccc ''\vgReverseFile.txt文件内容如下:ccc cccccccccccccccc ''\vgbbbbbbbbbbbbbbbbbbbbbakldf aaaaaaaaaaaaaaaaaaaaahadoop sknf ksdf klsng sklghklTue Nov 08 19:39:03 CST 2016

2. 定义一个不可变类Pair[T,S],带一个swap方法,返回组件交换过位置的新对偶。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package ex17_01
object Main extends App {
  val = new Pair(97 -> 'a')
  val = p.swap
  println(a)
}
class Pair[T, S](val p: (T, S)) {
  def swap = {
    (p._2, p._1)
  }
}
/*output:
(a,97)
*/

  3.定义一个可变类Pair[T],带一个swap方法,交换对偶中组件的位置。

object Main extends App {  val p = new Pair(97 -> 'a')  println(p.swap)  p.p = 98 -> 'b'  println(p.swap)}class Pair[T](var p: (T, T)) {  def swap = {    (p._2, p._1)  }}
/*output:
(a,97)
(b,98)
*/




0 0
原创粉丝点击