I have a question that I want to know "How to print CallStack in kotlin?". Thanks
Asked
Active
Viewed 175 times
0
-
1You can refer to the java method [How can I get the current stack trace in Java?](https://stackoverflow.com/questions/1069066/how-can-i-get-the-current-stack-trace-in-java), simply translate it into kotlin – Ricky Mo Jun 06 '23 at 08:47
-
1`Exception().printStackTrace()` – Tenfour04 Jun 06 '23 at 12:11
-
best practice: Lod.d(TAG, "Stack: ${Log.getStackTraceString(Throwable())}") – 刘路扬 Jun 21 '23 at 02:50
2 Answers
0
To print the CallStack in Kotlin, you can use the Throwable.getStackTrace() method and print the stack trace using the println() function. Here is an example:
fun main() {
try {
divide(10, 0)
} catch (e: Exception) {
e.printStackTrace()
}
}
fun divide(a: Int, b: Int): Int {
return a / b
}
In this example, we are calling the divide() function with two arguments: 10 and 0, which will lead to an ArithmeticException. So we are catching the exception and printing the stack trace using the e.printStackTrace() method. The output will look something like this:
java.lang.ArithmeticException: / by zero
at MainKt.divide(Main.kt:10)
at MainKt.main(Main.kt:4)
This shows the call stack for the exception, starting with the exception itself and going back to the original method call that caused the exception.

DASSDED
- 26
- 2
-
best practice: Lod.d(TAG, "Stack: ${Log.getStackTraceString(Throwable())}") – 刘路扬 Jun 21 '23 at 02:50