`

Java Stack Demo

阅读更多
/**
 * 
 */
package freewill.stackdemo;

import java.util.Scanner;

/**
 * @author freewill
 * @see Core Java page482
 * 
 */
public class StackTraceTest {
	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.println("Enter n: ");
		int n = in.nextInt();
		factorial(n);
	}
}

分享到:
评论

相关推荐

    Android stackview demo

    总之,通过这个"Android StackView Demo"项目,开发者提供了易于理解和使用的StackView实例,帮助其他开发者避免在实现过程中遇到的常见问题,从而更高效地在自己的应用程序中实现动态视图展示。

    Stack_Test_in_java.zip_DEMO

    在这个名为“Stack_Test_in_java.zip_DEMO”的压缩包中,包含了一个Java实现的栈的示例代码——StackTest.java。这个DEMO旨在帮助初学者理解如何在Java中使用栈,并提供了一个基于数组实现的简单栈模型。 首先,栈...

    java sip 协议栈实现客户端和服务

    Java Sip 协议栈是用于实现VoIP(Voice over IP)和其他实时通信服务的核心组件。SIP(Session Initiation Protocol)是一种应用层控制协议,主要用于建立、修改和终止多媒体会话,如语音通话、视频会议等。在这个...

    HXSDKHelper.java 环信Demo 

    * activityList.size() 意味着所有页面都已经在后台运行,或者已经离开Activity Stack */ protected void initEventListener() { eventListener = new EMEventListener() { private BroadcastReceiver ...

    StackViewDemo

    ```java stackView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView&lt;?&gt; parent, View view, int position, long id) { // 处理选中...

    java-data-struction.rar_DEMO

    Java集合框架是Java标准库中的重要组成部分,它提供了各种数据结构的实现,如ArrayList(动态数组)、LinkedList(链表)、Stack(栈)、Queue(队列)以及HashSet、HashMap等。这些类使得开发者可以方便地处理各种...

    FullStack_Demo:练习

    综上所述,"FullStack_Demo:练习"项目可能涵盖以上多个知识点,通过实际操作,开发者可以深入理解并掌握全栈开发中的Java技术栈,从而提升自己的专业技能。对于初学者而言,这是一个极好的实践平台,对于经验丰富的...

    20分钟学会用IDEA_DEBUG调试JAVA, 笔记源文件和实例DEMO

    这篇笔记和实例DEMO将带你深入理解和掌握如何使用IDEA_DEBUG来调试Java程序。 首先,我们要了解IDEA_DEBUG的基本操作。在IDEA中,启动调试模式主要有两种方式:一是通过点击工具栏上的绿色虫子图标或者使用快捷键...

    FragmentBackStack

    标签中的"Fragment BackStack Demo 学习"表明,这个压缩包可能包含了一个示例项目,可以作为学习FragmentBackStack的起点。 总之,FragmentBackStack是Android应用开发中的一个重要工具,它帮助开发者创建动态和...

    java实现的opc ua 客户端/服务端的简单例子

    在Java中,我们可以使用开源库如OpenOPC或 OPC-UA-Stack 来实现 OPC UA 的功能。 1. **客户端实现**: - **连接服务端**:客户端首先需要建立与服务端的连接,这通常涉及设置OPC UA服务器的地址、端口以及认证信息...

    logback-demo项目日志记录

    `logback-demo`项目可能会展示如何利用Logback与其他工具(如Logstash、ELK Stack或Graylog)集成,进行日志收集、解析和分析,从而实现对系统运行状况的实时监控和问题排查。 总之,`logback-demo`项目旨在演示...

    常用数据结构(堆栈,队列,列表)JAVA代码

    在这个主题中,我们将深入探讨Java实现的三种基本数据结构:堆栈(Stack)、队列(Queue)和列表(List)。这些概念是计算机科学的核心部分,对理解和解决复杂问题至关重要。 1. **堆栈(Stack)**: - 堆栈是一种...

    Struts2示例demo

    - **Value Stack**:Struts2的数据绑定机制,可以方便地在Action和JSP之间传递数据。 - **OGNL(Object-Graph Navigation Language)**:表达式语言,用于在Action和视图层之间获取和设置对象属性。 了解这些基础...

    resteasy实例demo

    10. **学习资源**:要深入了解RestEasy和RESTful编程,你可以参考官方文档、在线教程、Stack Overflow上的讨论,以及相关的书籍和博客文章。 通过这个RestEasy实例Demo,你可以逐步了解并掌握如何使用RestEasy构建...

    数据结构(java版)第二版和第四版demo源码资料等

    Java中,Stack类提供了栈的基本操作,如push()、pop()等。 4. **队列**:队列是一种先进先出(FIFO)的数据结构,常用于任务调度或数据缓冲。Java的Queue接口和LinkedList的实现可以用来创建队列。 5. **树**:树...

    基于java开发的开源网址导航网站项目源码+数据库+项目说明.zip

    $ java -jar Webstack-Guns-nkt-1.0.jar ``` 启动完成:http://127.0.0.1:8000 ## docker 方式部署 ### 下载镜像 ```bash docker pull codecly/webstack-guns-nkt-docker ``` 要修改的配置主要是mysql数据库连接...

    java3d新手入门

    为了深入学习Java3D,推荐阅读官方文档、教程和相关的在线论坛,如Oracle的Java3D教程,以及Stack Overflow上关于Java3D的问题和解答。此外,实践是提高技能的关键,尝试创建自己的3D场景并不断调整,会加深对Java...

    字符串逆序输出

    import com.ygsoft.demo.util.Stack; public class StackTest { public static void main(String[] args) { Stack&lt;String&gt; stack = new Stack(); String mm = "I like music,java,this is a test"; for (String...

    VoIP 使用SIP 和 Java实现

    - 创建SipFactory和SipStack对象,初始化SIP环境。 - 创建SipProvider,指定监听的网络接口和端口。 - 创建SipURI,表示呼叫的目标。 - 创建SipApplicationSession或SipSession,管理会话状态。 - 创建和发送SIP消息...

    Java定义栈结构,并实现入栈、出栈操作完整示例

    package com.example.demo; import java.util.ArrayList; public class Stack { ArrayList&lt;Object&gt; list = new ArrayList(); //入栈 public void push(Object o){ list.add(o); } //出栈 public Object ...

Global site tag (gtag.js) - Google Analytics