`
郑云飞
  • 浏览: 823374 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

第一次写的用arraylist模拟栈操作

 
阅读更多
package hashMap;
import java.util.ArrayList;
import d.Student;
/**
 * 用ArrayList模拟栈操作
 * @author 郑云飞
 * @see 2010年8月14日
 */

public class Stack
{
	ArrayList<Student> al=new ArrayList<Student>();
	public Object peek()
	{
		return al.get(0);
	}
	public Object pop()//出栈
	{
		return al.remove(al.size()-1);
	}
	public void push(Student o)//进栈
	{
		al.add(o);
	}
	public void clear()//将栈置空
	{
		al.clear();
	}
	public boolean isEmpty()//判断栈是否是空
	{
		if(al.isEmpty())
		{
			return true;
		}
		else 
		{
			return false;
		}
	}
	public Object getIndex(int i)//返回指定下标出的值
	{
		return al.get(i);
	}
}

 

package hashMap;
import d.Student;
/**
 * 用ArrayList模拟栈操作
 * @author 郑云飞
 * @see 2010年8月14日
 */
public class StackTest
{
	public static void main(String[] args)
	{
		Stack s1=new Stack();
		s1.push(new Student("庄子",200));
		s1.push(new Student("老子",200));
		s1.push(new Student("梦子",200));
		s1.push(new Student("荀子",200));
		while(!s1.isEmpty())
		{
			System.out.println(s1.pop());//出栈输出内容
		}
		
	}
}

 

package hashMap;
/**
 * 用ArrayList模拟栈操作
 * @author 郑云飞
 * @see 2010年8月14日
 */
public class Student
{
	String name;
	int age;
	public Student(String name,int age)
	{
		this.name=name;
		this.age=age;
	}
	public String toString()
	{
		return "姓名:" +name+"年龄:"+age;
	}
}

 

分享到:
评论

相关推荐

    初级程序员几套模拟试题

    - 数据库范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)。 8. **问题解决技巧**: - 使用调试工具进行问题定位,如GDB、Visual Studio Debugger等。 - 排错思路:复现问题、查看日志、利用断点、打印...

    java编程练习题

    2、写一个类用来模拟栈这种数据结构,要求底层 使用数组存储数据, 并给出相应的进栈和出栈的方法。MyStack int arr[]; int count;//栈中元素个数 public MyStack(int n){ arr = new int[n]; } boolean push(int ...

    java复习期末习题模拟练习答案

    - 在子类构造方法中使用`super()`调用父类的构造方法时,必须作为第一条语句。 - **类的继承的好处**: - 继承允许子类继承父类的所有属性和方法,减少了代码冗余。 - 子类可以根据需要重写或添加新的方法,实现...

    全国计算机等级考试二级Java模拟试题六.pdf

    13. Java可移植性:Java的可移植性源于其“一次编写,到处运行”的特性,这得益于Java虚拟机(JVM)的存在。 14. Java语言特点:Java是区分大小写的,源文件名与public类名必须相同,扩展名为.java,且每个源文件中...

    Java实现 LeetCode 636 函数的独占时间(栈)

    由于我们只有一个线程且无抢占,所以一次只能有一个函数在执行。因此,我们需要维护一个栈来保存当前正在运行的函数。栈顶的元素就是当前正在执行的函数。 当遇到一个新的函数开始运行的日志时,我们将该函数的 ID ...

    java中List的用法和实例详解.pdf

    - **`remove(Object o)`**:从此列表中移除第一次出现的指定元素(如果存在)。 - **`remove(int index)`**:删除指定位置的元素。 - **`set(int index, E element)`**:用指定元素替换此列表中指定位置上的元素。 -...

    Java容器框架 collection集合

    - `indexOf(Object o)`: 返回指定元素第一次出现的位置索引。 以上是对Java容器框架中的 `Collection` 集合的详细介绍,包括基本概念、接口方法以及 `List` 接口的深入讲解。这些知识点对于理解和应用Java集合框架...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    第一章 绪论 1 1.1 研究背景与意义 1 1.2国内外相关研究现状 2 1.2.1 在线认证检测平台开发现状 2 1.2.2 HTML5 3 1.2.3 Android 3 1.2.4 Android移动Web项目开发的三种解决方案:Native, Web和Hybrid优缺陷分析 4 ...

    java技术文档

    Java是一种广泛使用的高级编程语言,以其“一次编写,到处运行”的跨平台特性而著名。这份“java技术文档”集合了多个关键章节,旨在为初学者提供全面的学习资源。以下是各个章节主要内容的详细解释: 1. **第02章 ...

    一点Java复习资料

    - 软件学院05级OOP第二次测验试题及答案.doc:这可能是关于面向对象编程的一次测试,包括类、对象、封装、继承、多态等概念。 - OOP是Java的核心,理解类的定义、对象的创建和销毁、属性与方法的封装、单一职责...

    JAVA面试题80页.rar

    它的设计理念是“一次编写,到处运行”,这意味着编写好的Java代码可以在任何支持Java的平台上运行,无需重新编译。Java的语法与C++相似,但简化了许多复杂性,以提高安全性、可移植性和性能。 Java面试题通常涵盖...

    计算机软件基础课后习题答案.pdf

    `do...while`循环则先执行一次循环体再判断条件,确保循环体至少执行一次。 - `if...else`语句用于实现选择结构,根据条件执行不同的代码块。 - `continue`语句用于结束当前循环的剩余部分,直接进入下一轮循环。 ...

    CIIC4010_F18_MockExam2.1:UPRM高级编程2018年秋季考试2-模拟考试1

    "Mock Exam 2.1"则表明这是第二次模拟考试的第一个版本。 描述中的信息与标题相同,进一步确认这是一个关于高级编程的考试资源,可能是Java编程语言,因为标签中明确提到了"Java"。 在"CIIC4010_F18_MockExam2.1-...

    Java入门学习笔记

    - 第一个字符必须是字母、下划线(_)、美元符号($)。 - 后续字符可以是字母、数字、下划线、美元符号。 - 区分大小写。 - 不得使用Java关键字作为标识符。 **3.4 数据类型** - **基本数据类型:** - 整型(int,...

    java面试题及答案-非常全面(包括基础、网络、数据结构、算法及IT大厂面经)

    - **特点**:适合一次写入多次读取的大文件存储。 - **架构**:包括NameNode(元数据管理)和DataNode(数据存储)。 ### 数据库 #### 数据库索引 - **概念**:加速数据检索的过程。 - **类型**:包括主键索引、...

    android知识点整理

    - **冒泡排序**:重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。 5. **线程和线程池** - 线程是程序执行流的基本单元。在一个程序中同时运行多个线程来执行不同的任务,称为多...

    2021-2022计算机二级等级考试试题及答案No.3831.docx

    - **解析**:栈是一种特殊的线性表,只允许在一端(称为栈顶)进行插入和删除操作。 - **栈按"先进先出"组织数据**:不正确,栈遵循的是“后进先出”原则。 - **栈按"先进后出"组织数据**:正确答案,栈遵循的是...

    二期认证笔试

    - **关系型数据库**:理解ACID属性,事务处理,数据库设计中的范式理论(第一范式到第三范式)。 - **NoSQL数据库**:如MongoDB的文档数据库特性和分布式存储策略。 4. **操作系统**: - **进程与线程**:理解...

    java复习题目

    #### 第一章:Java基础概念 - **Java语言的执行方式**: - Java是一种编译型语言,同时也是一种解释型语言。首先,源代码需要通过编译器转换成字节码(.class文件),然后由Java虚拟机(JVM)解释执行这些字节码。...

    2019-CodeVS2:第二次尝试

    【标题】"2019-CodeVS2:第二次尝试" 暗示这是一个关于编程竞赛或项目挑战的记录,可能是在2019年在CodeVS平台上进行的。CodeVS是一个在线编程竞赛平台,参与者可以在这里提升编程技能,解决各种算法问题。第二次...

Global site tag (gtag.js) - Google Analytics