zoukankan      html  css  js  c++  java
  • 《java入门第一季》之LinkList模拟桟结构案例

    需求:请用LinkedList模拟栈数据结构的集合,并测试

    题目的意思是:

    你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟。


    定义一个类叫MyStack代码如下:

    package cn.itcast_05;
    
    import java.util.LinkedList;
    
    /**
     * 自定义的栈集合
     * 
     * @author 风清扬
     * @version V1.0
     */
    public class MyStack {
    	private LinkedList link;//定义一个LinkedList类型的变量 link,定义引用类型的变量
    
    	public MyStack() {
    		link = new LinkedList();//外界一创建MyStack的对象就执行这里的语句。在底层创建产生LinkedList对象即link对象。
    	}
    
    	public void add(Object obj) {
    		link.addFirst(obj);//外界调用这里,底层实际上是做addFirst添加。LinkedList类下面的方法:public void addFirst(E e)将指定元素插入此列表的开头。
    	}
    
    	public Object get() {
    		return link.removeFirst();
    		//LinkedList类下面的方法:public Object removeFirst()移除并(返回)此列表的第一个元素。返回的是object类型的
    	}
    
    	public boolean isEmpty() {//LinkedList类下面的方法:boolean isEmpty()如果列表不包含元素,则返回 true。 
    		return link.isEmpty();
    	}
    }
    
    而我们自定一的类可以直接使用了。代码写了出来如下:

    package cn.itcast_05;
    
    /*
     * MyStack的测试
     * public void addFirst(E e)将指定元素插入此列表的开头。
     * public E removeFirst()移除并(返回)此列表的第一个元素。
     * LinkedList的这两个方法与桟有关
     * 
     */
    public class MyStackDemo {
    	public static void main(String[] args) {
    		// 创建集合对象
    		MyStack ms = new MyStack();
    
    		// 添加元素
    		ms.add("hello");
    		ms.add("world");
    		ms.add("java");
    		
    		while(!ms.isEmpty()){
    			String s = (String) ms.get();
    			System.out.println(s);//字符串
    		}
    	}
    }
    



  • 相关阅读:
    菜根谭#39
    菜根谭#38
    菜根谭#37
    菜根谭#36
    菜根谭#35
    菜根谭#34
    菜根谭#33
    菜根谭#32
    mysqli的使用
    mysql常用修改创建语句
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299783.html
Copyright © 2011-2022 走看看