您的位置:首页 > 其它

scala 基本语句-流程控制与函数定义、异常处理

2015-07-12 22:18 429 查看

表达式

//表达式
var file="scala.txt"
if(!args.isEmpty)file=args(0)

//val file=if(!args.isEmpty) args(0) else "Spark.xml"
println(file)
//println(if(!args.isEmpty) args(0) else "hello scala")




以上三种方式均可输出:scala.txt

for循环

//for循环
for(i<-1 to 10){
println("Number is :"+i)
}
/* for(i<-1.to(10)){
println("Number is :"+i)
}*/




for(i<-1 to 10)与for(i<-1.to(10))的效果是一样的

to是1的一个方法



查找当前目录下的所有文件

//找当前目录下所有文件
val files=(new File(".")).listFiles()
for(file<- files){
println(file)
}




函数(方法)定义与调用

package kmust.hjr.learningScala02

import java.io.File

/**
* Created by Administrator on 2015/7/12.
*/
object scalaBasics {

def main(args:Array[String]): Unit ={
println("易者悠也")

doWhile()
}
}
/*
* doWhile()方法定义
*/
def doWhile(){
var line=""
do{
line=readLine()
println("Read:"+line)
}while(line!="")
}




注:方法的定义在main()函数之前之后均可

/*
*looper()方法定义
*/
def looper(x:Long,y:Long):Long={
var a=x
var b=y
while(a!=0){
val temp=a
a=b%a
b=temp
}
b
}


def main(args:Array[String]): Unit ={
println("易者悠也")

//doWhile()

println(looper(100,298))
}




异常处理

val n=99
try{
val half = if(n%2==0)n/2 else throw
new RuntimeException("N must be event !")

}catch {
case e : Exception=>println("This exception       is :"+e.getMessage())
}finally {
}




也是使用的try-catch,不同的是catch里面使用的case来分类别显示异常

scalaBasics 的完整代码

package kmust.hjr.learningScala02

import java.io.File

/**
* Created by Administrator on 2015/7/12.
*/
object scalaBasics {

def main(args:Array[String]): Unit ={
println("易者悠也")

//doWhile()

//println(looper(100,298))

//表达式
// var file="scala.txt"
// if(!args.isEmpty)file=args(0)

//val file=if(!args.isEmpty) args(0) else "Spark.xml"
// println(file)
//println(if(!args.isEmpty) args(0) else "hello scala")

/* //for循环
for(i<-1 to 10){
println("Number is :"+i)
}
for(i<-1.to)){
println("Number is :"+i)
}*/

/*//找当前目录下所有文件 val files=(new File(".")).listFiles() for(file<- files){ println(file) }*/

/* var line=""
do{
line=readLine()
println("Read:"+line)
}while(line!="")*/

val n=99
//val file="Scala.txt"
//openFile(file)
try{
val half = if(n%2==0)n/2 else throw
new RuntimeException("N must be event !")
//Use the file
}catch {
case e : Exception=>println("This exception is :"+e.getMessage())
}finally {
//close(file)
}
}
/*
* doWhile()方法定义
*/
def doWhile(){
var line=""
do{
line=readLine()
println("Read:"+line)
}while(line!="")
}
/*
*looper()方法定义
*/
def looper(x:Long,y:Long):Long={
var a=x
var b=y
while(a!=0){
val temp=a
a=b%a
b=temp
}
b
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: