疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java使用泛型实现栈结构


 

  Java使用泛型实现栈结构

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

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

  代码如下:

  Stack.java:

  package cn.edu.xidian.crytoll;

  import java.util.LinkedList;

  public class Stack {

  private LinkedList container = new LinkedList();

  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 stack = new Stack();

  System.out.println("向栈中增加字符串:");

  System.out.println("视频学Java");

  System.out.println("细说Java");

  System.out.println("Java学习笔记");

  stack.push("视频学Java"); //向栈中增加字符串

  stack.push("细说Java"); //向栈中增加字符串

  stack.push("Java学习笔记"); //向栈中增加字符串

  System.out.println("从栈中取出字符串:");

  while (!stack.empty()) {

  System.out.println((String) stack.pop());//删除栈中全部元素并进行输出

  }

  }

  }