/**

* 书本:《Thinking In Java》

* 功能:用java实现堆栈功能

* 文件:LinkedStack.java

* 时间:2015年4月17日14:23:34

* 作者:cutter_point

*/

package Lesson15_generices;

public class LinkedStack

{

private static class Node

{

U item;

Node next;//下一个对象的引用

Node() { item = null; next = null; }//默认构造函数的都是空的

Node(U item, Node next)

{

this.item = item;

this.next = next;

}

boolean end() { return item == null && next == null; }

}

private Node top = new Node();//栈顶元素

public void push(T item)

{

top = new Node(item, top);//把这个新的元素赋值给栈顶引用

}

public T pop()

{

T result = top.item;//把栈顶的元素弹出去

if(!top.end())

top = top.next;

return result;

}

public static void main(String[] args)

{

LinkedStack lss = new LinkedStack();//创建一个堆栈类

for(String s : "My name is cutter_point!".split(" "))

{

lss.push(s);

}

String s;

while((s=lss.pop()) != null)

System.out.println(s);

}

}

输出:

cutter_point! is name My

Java堆栈功能_【ThinkingInJava】35、用java实现堆栈功能相关推荐

  1. 做Java头发少_这35个Java代码优化细节,你用了吗

    链接:https://www.jianshu.com/p/6e472304b5ac 前言 代码 优化 ,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有 ...

  2. 鲸鱼优化算法_盘点 35 个 Java 代码优化细节

    代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是, ...

  3. java商品搜索功能_利用solr实现商品的搜索功能(实例讲解)

    后期补充: 为什么要用solr服务,为什么要用luncence? 问题提出:当我们访问购物网站的时候,我们可以根据我们随意所想的内容输入关键字就可以查询出相关的内容,这是怎么做到呢?这些随意的数据不可 ...

  4. java python算法_用Python,Java和C ++示例解释的排序算法

    java python算法 什么是排序算法? (What is a Sorting Algorithm?) Sorting algorithms are a set of instructions t ...

  5. java 判断类型_如何快速入门Java编程学习(干货)

    一.初识Java 1.生活中的程序: 从起床到教室上课的过程 穿衣打扮>起床>洗漱>出宿舍>>吃早餐>到教室 按照特定的顺序去完成某一件事的过程我们叫做生活中的程序 ...

  6. java必读书籍_最佳5本Java性能调优书籍–精选,必读

    java必读书籍 为什么Java开发人员应该阅读有关性能调优的书? 当我很久以前第一次面对这个问题时,我以为以后会做,但是我很长一段时间都没有回过头来. 仅当我在用Java编写的任务关键型服务器端财务 ...

  7. java logger使用_这才是JAVA中打印日志的正确姿势

    作者:lrwin 原文链接:http://t.cn/E9BkD7a 使用slf4j 1. 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一 2. 实现方式统一使用: Logback框架 打 ...

  8. java 编译器原理_作业5:Java编译原理

    零.编译 1.编译器 (1)前端编译器:.java文件转变为.class文件Sun的javacEclipse JDT中的增量编译器(ECJ) (2)后端编译器:.class文件转变为机器码HotSpo ...

  9. java编程赋值运算符_跟我学java编程—简单赋值运算符“=”

    赋值运算符是双目运算符,用在赋值表达式中.赋值运算符将值存储在运算符左边操作数指定的变量中.有两种赋值操作,简单赋值和复合赋值,简单赋值把运算符右边的操作数的值存储在运算符左边操作数指定的变量中:复合 ...

  10. java session使用_使用Neo4j和Java进行大数据分析 第2部分

    本文的第一部分介绍了Neo4j及其Cypher查询语言.如果您已经阅读了第1部分,那么您已经了解了为什么Neo4j和其他图形数据库特别受社交图形或网络中用户之间关系建模的影响.您还在开发环境中安装了N ...

最新文章

  1. 【LeetCode-704 | 二分查找】
  2. 使用vmware 报错 解决方法
  3. UVa 10642 - Can You Solve It?
  4. 【Android】资源加载过程
  5. appium的python教程_移动App Appium自动化测试教程Appium+Python 【2018年新】_IT教程网...
  6. python给函数添加属性_如何在python中自动向类添加属性?
  7. 在MySQL查询山东省男生信息_MySQL-查询
  8. 我的docker随笔22:多域名同主机部署
  9. 改造二叉树 (长乐一中模拟赛day2T1)
  10. Django中Python3安装Crypto使用RSA
  11. php背景图片居中对齐命令,css怎么设置背景图片自适应居中
  12. vpp之node节点分析二: qs类型
  13. 勒索病毒是什么?防勒索病毒我们该怎么做?
  14. [高通MSM8953_64][Android10]移除开机进入充电界面
  15. 【题解】CSP-J2021第二轮题解
  16. 获取股票简单数据:腾讯、新浪、东方财富。。。
  17. Exception 异常
  18. Python中字符串截取
  19. 机器学习与知识发现电子书_2019年,5本关于机器学习的免费电子书你应该知道(有资源)...
  20. 51单片机学习笔记【七】——蜂鸣器和继电器

热门文章

  1. 每个程序员都应该了解的内存知识(3)-虚拟内存
  2. Windows server 2003 DNS 全攻略(一)
  3. 谈博客的赢(盈)利模式
  4. 高翔博士SLAMBOO2十二讲代码库中的三方库没有下载下来 ,需要手动对三方库单独下载的git的命令如下
  5. 简书上的大牛总结的 ServerSocket Accept() 的确是阻塞方法 与猜想一致 一些理解 转载如下
  6. NLP情感分析 动手学深度学习博客
  7. 大话数据结构书籍及配套源码
  8. CRF算法中辅助概念 团 极大团 最大团
  9. 在一个html加载多个echarts,Echarts一个页面加载多个图表及图表自适应
  10. 一。深入了解JDK1.8 从Package java.io开始