(七)Kotlin简单易学 基础语法- 自定义异常与先决条件函数
(七)Kotlin简单易学 基础语法- 异常处理与自定义异常
异常
➢抛出异常
➢自定义异常
➢异常处理
自定义异常
fun main(){var number :Int? = nulltry{checkOperation(number )number !!.plus(1)
}catch(e:Exception){print(e)
}
}fun checkOperation(number:Int?){number ?: throw UnsikilledException()
}class UnsikilledException() : IllegalArgumentException("操作不当")
先决条件函数
➢Kotlin标准库提供了一些便利函数,使用这些内置函数,你可以抛出带自定义信息的异常,这些便利函数叫做先决条件函数,你可以使用它定义先决条件,条件必须满足,目标代码才能执行。
函数 | 描述 |
---|---|
checkNotNull | 如果参数为null,则抛出IllegalStateException异常,否则返回非null值 |
require | 如果参数为null,则抛出IllegalArgumentException异常 |
requireNotNull | 如果参数为null,则抛出IllegalStateException异常 ,否则返回非null值 |
error | 如果参数为null,则抛出IllegalStateException异常 并且输出错误信息,否则返回非null值 |
assert | 如果参数为flase,则抛出AssertionError异常 ,并打上断言编译器标记 |
(七)Kotlin简单易学 基础语法- 自定义异常与先决条件函数相关推荐
- (五)Kotlin简单易学 基础语法-初始函数(下)
(五)Kotlin简单易学 基础语法-初始函数(下) 函数内联 ➢ lambda可以让你更灵活的编写应用,但是,灵活也要付出代价的. ➢在JVM上,你定义的lambda会以对象实例的形式存在,JVM会 ...
- (二十三)Kotlin简单易学 基础语法-什么是函数式编程
(二十三)Kotlin简单易学 基础语法-什么是函数式编程 什么是函数式编程 我们一直在学习面向对象编程范式,另一个较知名的编程范式是诞生于20世纪50年代,基于抽象数学的λ演算发展而来的函数编程,尽 ...
- Kotlin系列之基础语法
标签: Kotlin Kotlin基础语法 目录: 一.包的声明 二.函数的定义 三.常量和变量 四.注释 五.字符串模板 六.使用条件表达式 七.NULL检查机制 八.类型检测以及自动类型 ...
- Kotlin 开篇之基础语法篇
文章目录 前言 Kotlin 基础 1. 函数声明 1.1 表达式函数体 1.2 函数调用 2. 变量 2.1 可变变量和不可变量 2.2 引用变量值 2.3 空安全 3. 基础类型 3.1 数字类型 ...
- PHP入门指南:简单易学的语法和丰富的调试工具与安全性最佳实践
PHP是一种非常流行的服务器端编程语言,它被广泛地应用于Web开发中.如果您想学习Web开发,那么PHP是一个非常好的选择.在本文中,我将介绍PHP的一些基础知识,包括语法.变量.函数.数组.数据库连 ...
- kotlin语言的基础语法
Kotlin是一个用于现代多平台应用的静态编程语言,于2011年7月由 JetBrains 开发,这是一个基于JVM上运行的新语言:kotlin 语言是对 Java 语言的优化和封装,语法上有很多相 ...
- Kotlin学习笔记-基础语法
去年学习过一遍Kotlin,相比java而言,Kotlin确实有许多方便的地方,但是学习之后一直没有真正拿来写项目,很久不用很多东西都已经忘记了.最近Google宣布Kotlin成为Android开发 ...
- 专科 java转go 翱翔之路(一)基础语法:变量声明,匿名函数,结构体,函数,map
本人专科!在太原干了一年了,想从java转go,上班中自学go,明年找go语言相关的工作 立帖为证! 待羽翼丰满,大风到来,便是我翱翔之时!!! 1.Go语言 1.命令 1.1 查看版本号 go ve ...
- pythonisodd函数_python3.5|小白入门基础语法之数据结构、函数、迭代,确实简洁...
# 1 list列表================================================= # list是一种有序的集合,可以随时访问.添加和删除其中的元素 # 仅从操作方 ...
- Kotlin快速入门:基础语法、类与继承、集合
参考书籍: <AtomicKotlin>,全英文,读起来慢,但是写得很详细,没有任何语言基础的也能看懂 <第一行代码 Android 第三版>,第二章,有java基础的看一看就 ...
最新文章
- Qt之QByteArray类学习
- 【阿里云课程】详解深度学习优化:泛化与正则化,学习率与最优化
- zcmu-2149(归并排序)
- php图片上传在哪个文件夹,php删除上传的图片及文件夹
- mysql 二元分词_MySQL 中文分词原理
- 信息学奥赛一本通 1080:余数相同问题 2022.1.29 AC
- java mybatis 返回map_mybatis返回map集合的格式是什么?mybatis返回map集合实例
- 【机器学习】Andrew Ng——01概述
- block和代理小结
- 用C++计算文件的MD5值
- Cloud Native 演进可行性研究
- 统计并输出数字、大写字母、小写字母
- 淘宝定价的方式有什么,如何根据活动来定价
- 2021-09-02
- odb 使用指南(三)持久化对象的处理
- Win7从文件服务器复制文件速度慢问题处理
- 生产者消费者模式剖析
- Proteus和Keil C51联调仿真完整解析(附程序)
- 视图属性-详细参数解释
- vue2实现可拖拽甘特图(结合element-ui的gantt图)
热门文章
- 初识JavaScript,体验JS的美好
- linux io page fault,Linux的page fault
- 十大排序算法笔记(C语言)(一)选择排序、冒泡排序、插入排序、希尔排序、快速排序
- Multi-Instance Multi-Label Learning Networks for Aspect-Category Sentiment Analysis
- ADS1256实现轮询
- 百度网盘打不开的问题的解决
- PDF Expert快捷键
- FreeMarker模板导出pdf,页码,页脚,分页等
- 【心悟水浒】带团队懂管理
- 【转】Ouroboros:一个可证明安全的PoS区块链协议 (共识介绍)