stacktracetest.java
来自「经典教材:java核心技术卷1、卷2的所有源代码」· Java 代码 · 共 41 行
JAVA
41 行
/**
@version 1.01 2004-05-10
@author Cay Horstmann
*/
import java.util.*;
/**
A program that displays a trace feature of a recursive
method call.
*/
public class StackTraceTest
{
/**
Computes the factorial of a number
@param n a nonnegative integer
@return n! = 1 * 2 * . . . * n
*/
public static int factorial(int n)
{
System.out.println("factorial(" + n + "):");
Throwable t = new Throwable();
StackTraceElement[] frames = t.getStackTrace();
for (StackTraceElement f : frames)
System.out.println(f);
int r;
if (n <= 1) r = 1;
else r = n * factorial(n - 1);
System.out.println("return " + r);
return r;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print("Enter n: ");
int n = in.nextInt();
factorial(n);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?