三.try与match表达式

object worksheet_p3 {
/*
	try{}   try在java中是语句,在scala中是表达式,会返回一个值
	catch{}
	finaly{}
*/
	val result_try = try{
	// 把dog转成int,这时候,会抛出异常
		Integer.parseInt("dog")
	}catch{              // 这里的意思是:抛出异常之后,进入到catch,catch接收,
		case _ => 0        // catch有case _ => 0,这里的  "_" 下划线是通配符,可以通配所有的对象,所以,这里不管上面发生哪种异常,这里都可以接受,同时返回0
	}finally {           // 这里的finally语义和java里finally语义是一样的,无论是否有异常,finally这个代码块都会执行
		println("always be printed")
	}                                         //> always be printed
                                                  //| result_try  : Int = 0
	                                                // 这里是将try返回的值:0 int类型,给了result_try,result_try等于0
	
	/*
	exp match{ //主要用在pattern match中
		case p1 => val1   如果exp(表达式)与p1匹配上,那么就返回val1
		case p2 => val2   同上
		..
		case _ =>valn   _通配符,可以通配所有的对象,类似与switch里面的default;如果exp(表达式)与上面的pattern(值)都匹配不上,那么就返回valn
	}
	*/
	val code = 3;                             //> code  : Int = 3
	val result_match = code match{
		case 1 => "one"
		case 2 => "two"
		case _ => "others"
	}                                         //> result_match  : String = others
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值