zoukankan      html  css  js  c++  java
  • Java使用泛型实现栈结构

    泛型是Java SE5.0的重要特性,使用泛型编程可以使代码获得最大的重用。由于在使用泛型时要指明泛型的具体类型,这样就避免了类型转换。本实例将使用泛型来实现一个栈结构,并对其进行测试。

    思路分析:既然是用泛型实现栈结构,那就不能用JDK自带的stack包了,需要自己定义一个栈结构,比如LinkedList

    代码如下:

    Stack.java:

    package cn.edu.xidian.crytoll;
    import java.util.LinkedList;
    
    public class Stack<T> {
        
        private LinkedList<T> container = new LinkedList<T>();
        
        public void push(T t) {
            container.addFirst(t);
        }
        
        public T pop() {
            return container.removeFirst();
        }
        
        public boolean empty() {
            return container.isEmpty();
        }
    }
    

    StackTest.java:

    package cn.edu.xidian.crytoll;
    
    public class StackTest {
        public static void main(String[] args) {
            Stack<String> stack = new Stack<String>();
            System.out.println("向栈中增加字符串:");
            System.out.println("视频学Java");
            System.out.println("细说Java");
            System.out.println("Java从入门到精通(第2版)");
            stack.push("视频学Java");  //向栈中增加字符串
            stack.push("细说Java");   //向栈中增加字符串
            stack.push("Java从入门到精通(第2版)"); //向栈中增加字符串
            System.out.println("从栈中取出字符串:");
            while (!stack.empty()) {
                System.out.println((String) stack.pop());//删除栈中全部元素并进行输出
            }
        }
    }
    

      效果如图:

  • 相关阅读:
    Ubuntu 忘记root密码的解决方法
    zabbix 参数说明
    Python 进阶_OOP 面向对象编程_self 的实例绑定
    centos 6.5关闭NetworkManager
    本地yum源
    VMware通过VMnet8共享本地网络
    EasyUI之手风琴Accordion
    php 分页
    修改css
    /Home/Tpl/Equipment/rangeIndex.html 里调用魔板
  • 原文地址:https://www.cnblogs.com/cysolo/p/3577542.html
Copyright © 2011-2022 走看看