gpt4 book ai didi

Java编程思想里的泛型实现一个堆栈类 分享

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 33 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Java编程思想里的泛型实现一个堆栈类 分享由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

觉得作者写得太好了,不得不收藏一下.

对这个例子的理解:

//类型参数不能用基本类型,T和U其实是同一类型.

//每次放新数据都成为新的top,把原来的top往下压一级,通过指针建立链接.

//末端哨兵既是默认构造器创建出的符合end()返回true的节点.

复制代码代码如下:

//: generics/LinkedStack.java
// A stack implemented with an internal linked structure.
package generics;

  。

public class LinkedStack<T> {   private static class Node<U> {     U item;     Node<U> next;     Node() { item = null; next = null; }     Node(U item, Node<U> next) {       this.item = item;       this.next = next;     }     boolean end() { return item == null && next == null; }   }   private Node<T> top = new Node<T>(); // End sentinel   public void push(T item) {     top = new Node<T>(item, top);   }       public T pop() {     T result = top.item;     if(!top.end())       top = top.next;     return result;   }   public static void main(String[] args) {     LinkedStack<String> lss = new LinkedStack<String>();     for(String s : "Phasers on stun!".split(" "))       lss.push(s);     String ss;     while((ss = lss.pop()) != null)       System.out.println(ss);       //----- if put integer into the LinkedList       LinkedStack<Integer> lii = new LinkedStack<Integer>();       for(Integer i = 0; i < 10; i++){           lii.push(i);       }       Integer end;       while((end = lii.pop()) != null)           System.out.println(end);       //----- integer test end!   }    }  /* Output: stun! on Phasers */ 。

  。

最后此篇关于Java编程思想里的泛型实现一个堆栈类 分享的文章就讲到这里了,如果你想了解更多关于Java编程思想里的泛型实现一个堆栈类 分享的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com