Scala控制台读入数据的方法
使用前需要将scala.io.StdIn
导入
readInt | readShort | readChar |
readDouble | readFloat | readBoolean |
readByte | readLong | readLine |
输入信息示例:
scala> import io.StdIn._
import io.StdIn._
scala> var i =readInt()
i: Int = 54
scala> var f = readFloat
f: Float = 1.618
scala> var b = readBoolean
b: Boolean = true
scala> var str = readLine("please input your name:")
please input your name:str: String = Li Lei
scala>
输出示例:
scala> val i = 345
i: Int = 345
scala> print("i=");print(i)
//两条语句位于同一行,不能省略中间的分号
i=345
scala> println("hello");print("world")
hello
world
scala> printf("I am %d years old and weight %.1f Kg.",i,f)
I am 34 years old and weight 56.5 Kg.
插值字符串s,f
- s可以实现字符串的插值
- f可以在实现字符串插值的基础上,具体控制字符串输出格式
scala> val i = 10
i: Int = 10
scala> val f = 3.54546
f: Double = 3.54546
scala> val s = "hello"
s: String = hello
scala> println(s"$s:i=$i,f=$f")//s插值字符串
hello:i=10,f=3.54546
scala> println(f"$s:i=$i%-4d,f=$f%.1f")//f插值字符串
hello:i=10 ,f=3.5
写入文件
import java.io.PrintWriter
scala> val outputFile = new PrintWriter("test.txt")
outputFile: java.io.PrintWriter = java.io.PrintWriter@4c263d9c
scala> outputFile.println("Hello World")
scala> outputFile.print("Spark is good")
scala> outputFile.close()
scala> import scala.io.Source
import scala.io.Source
scala> val inputFile = Source.fromFile("output.txt")
scala> val lines = inputFile.getlines//返回的结果是一个迭代器
scala> for(line<-lines)println(line)