Kotlin 异常处理(try...catch,finally)

简介: 一、Try…Catch 捕获分支异常的匹配类型 表达式,可以用来赋值package net.println.kotlin.

一、Try…Catch
捕获分支异常的匹配类型
表达式,可以用来赋值

package net.println.kotlin.chapters

/**
 * @author:wangdong
 * @description:Try...catch举例
 */
fun main(args: Array<String>){
    try {
        val arg1 = args[0].toInt()
        val arg2 = args[1].toInt()

        println("$arg1 + $arg2 = ${sum(arg1, arg2)}")
    } catch (e: NumberFormatException) {
        //将异常信息打印出来
        e.printStackTrace()
        println("您确定输入的是整数吗?")
    } catch (e: ArrayIndexOutOfBoundsException) {
        e.printStackTrace()
        println("您确定输入的是两个整数吗?")
    } catch (e: Exception) {
        println("程序出现了未知异常,可能是您的人品太差了。${e.message}")
        //finally总会执行的
    } finally {
        println("谢谢您使用我们的加法计算器")
    }
}

fun sum(arg1: Int, arg2: Int): Int {
    return arg1 + arg2
}

二、Finally
finally 无论代码是否抛出异常都是会执行的
注意下面的写法

val x: Int = 3;
    val y: Int = 4
    var z = 0
    try {
      z = x/y
    }catch (e: Exception){
        z = 0
        //finally无论如何都是会被执行到的
    }finally {
        println("程序执行完毕")
    }
目录
相关文章
|
4天前
|
Java Serverless Kotlin
Kotlin中的异常处理
Kotlin中的异常处理
7 1
|
17天前
|
XML 存储 数据格式
Kotlin Fuel库:图像下载过程中的异常处理
Kotlin Fuel库:图像下载过程中的异常处理
|
11月前
|
安全 Java Kotlin
Kotlin中空安全操作符,异常处理和自定义异常,以及先决条件函数详解
Kotlin中空安全操作符,异常处理和自定义异常,以及先决条件函数详解
97 0
|
设计模式 前端开发 Java
Android体系课之--Kotlin协程进阶篇-协程的异常处理机制以及suspend关键字(三)
协程通过将复杂性放入库来简化异步编程。程序的逻辑可以在协程中顺序地表达,而底层库会为我们解决其异步性。该库可以将用户代码的相关部分包装为回调、订阅相关事件、在不同线程(甚至不同机器!)上调度执行,而代码则保持如同顺序执行一样简单。
|
Kotlin
Kotlin | 关于协程异常处理,你想知道的都在这里(下)
关于协程的异常处理,一直以来都不是一个简单问题。因为涉及到了很多方面,包括 异常的传递 ,结构化并发下的异常处理 ,异常的传播方式 ,不同的Job 等,所以常常让很多(特别是刚使用协程的,也不乏老手)同学摸不着头脑。
325 0
Kotlin | 关于协程异常处理,你想知道的都在这里(下)
|
Android开发 Kotlin
Kotlin | 关于协程异常处理,你想知道的都在这里(上)
关于协程的异常处理,一直以来都不是一个简单问题。因为涉及到了很多方面,包括 异常的传递 ,结构化并发下的异常处理 ,异常的传播方式 ,不同的Job 等,所以常常让很多(特别是刚使用协程的,也不乏老手)同学摸不着头脑。
234 0
Kotlin | 关于协程异常处理,你想知道的都在这里(上)
|
算法 Java Android开发
抽丝剥茧聊Kotlin协程之协程异常处理机制分析
抽丝剥茧聊Kotlin协程之协程异常处理机制分析
抽丝剥茧聊Kotlin协程之协程异常处理机制分析
|
Android开发 C++ Kotlin
Kotlin Coroutines Flow 系列(三) 异常处理
Kotlin Coroutines Flow 系列(三) 异常处理
565 0
|
1月前
|
安全 Java Android开发
使用Kotlin进行Android应用开发:高效、简洁与乐趣并存
【6月更文挑战第1天】Kotlin,JetBrains开发的静态类型语言,正日益成为Android开发首选。它与Java兼容,提供简洁、安全的语法,如空安全、扩展函数和Lambda表达式,提升开发效率和代码可读性。Kotlin在Android开发中的优势包括提高开发速度、降低学习曲线及强大的社区支持。实践中,数据类简化对象创建,扩展函数增强SDK,Lambda表达式简化回调处理,协程优化异步操作。掌握Kotlin对Android开发者极具价值。
|
2月前
|
存储 安全 Android开发
构建高效的Android应用:Kotlin与Jetpack的结合
【5月更文挑战第31天】 在移动开发的世界中,Android 平台因其开放性和广泛的用户基础而备受开发者青睐。随着技术的进步和用户需求的不断升级,开发一个高效、流畅且易于维护的 Android 应用变得愈发重要。本文将探讨如何通过结合现代编程语言 Kotlin 和 Android Jetpack 组件来提升 Android 应用的性能和可维护性。我们将深入分析 Kotlin 语言的优势,探索 Jetpack 组件的核心功能,并通过实例演示如何在实际项目中应用这些技术。