JAVA Stack

在java中,Stack类位于java.util包下,继承Vector类:

public class Stack<E>
extends Vector<E>

Stack类包含了一般栈逻辑相关的方法:

public E push(E item)

push向栈中添加元素。

public E pop()

pop是出栈方法,返回栈顶元素并删除栈顶元素,此时栈中元素数目将减少一个。若栈为空时,会发生异常EmptyStackException

public E peek()

peek方法只是取出栈顶元素,不删除栈顶元素。若栈为空时,会发生异常EmptyStackException

public boolean empty()

empty用于判断栈是否为空。栈为空时,返回true;非空时,返回false。

public int search(Object o)

search用于查询对象o是否在栈中。若o(若有多个位置出现o,则只查询距离栈顶最近的那个元素)在栈中,则返回离栈顶的距离(栈顶元素默认为1);若o不在栈中,则返回-1。

一个简单的例子:

import java.util.Stack;
public class StackTest{
    public static void main(String []args){
        Stack<String> s = new Stack<String>();
        for(int i=0; i<10; i++){
            s.push("Item " + String.valueOf(i));
        }
        String str = "Item 7";
        if(s.search(str) != -1){
            System.out.println(str + " in loc " + String.valueOf(s.search(str)) );
        }else{
            System.out.println(str + " not in stack ");
        }

        while(!s.empty()){
            System.out.println("peek --- " + s.peek());
            System.out.println("pop --- " + s.pop());
        }

    }
}

输出:

Item 7 in loc 3
peek --- Item 9
pop --- Item 9
peek --- Item 8
pop --- Item 8
peek --- Item 7
pop --- Item 7
peek --- Item 6
pop --- Item 6
peek --- Item 5
pop --- Item 5
peek --- Item 4
pop --- Item 4
peek --- Item 3
pop --- Item 3
peek --- Item 2
pop --- Item 2
peek --- Item 1
pop --- Item 1
peek --- Item 0
pop --- Item 0
1、课程简介          ElasticStack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等,能够安全可靠地获取任何来源、任何格式的数据,并且能够实时地对数据进行搜索、分析和可视化。其中,Logstash和Beats负责数据的收集,Kibana负责结果数据的可视化展现,Elasticsearch作为核心部分用于数据的分布式存储以及索引。   我们可以使用ElasticStack进行收集并处理任何数据,最为经典的是用于实时日志数据的收集、存储、展现。在此之前,如果实现实时日志的分析,需要经过繁琐的架构设计并且使用多个系统实现,现在只需要使用ElasticStack即可实现功能强大的实时日志分析系统,ElasticStack不仅仅用来做日志分析,它可以处理任何的数据并且进行存储、展现。          在本套课程中,我们将全面的讲解ElasticStack技术栈,从环境的部署到技术的应用,再到项目实战,让我们不仅是学习框架技术的使用,而且可以学习到使用ElasticStack如何解决实际的问题,我们通过收集系统日志数据、服务器指标数据、nginx的运行数据等,多维度的展示了ElasticStack的应用范围,最终将分析的结果数据非常友好的展现出来,没错!不需要前端的参与也可以做出“高大上”的结果显示页。   2、适应人群   有一定的Java基础,并且要有一定的web开发基础。   3、课程亮点          系统的学习ElasticStack技术栈,掌握最先进的搜索、数据收集等技术。   l  Elasticsearch   n  快速入门   n  核心详解   n  中文分词   n  Elasticsearch集群   n  Java客户端的应用   l  Beats & Kibana & Logstash   n  Filebeat(文件采集器)   n  Metricbeat(指标采集器)   n  采集Nginx的日志以及指标数据   n  Kibana自定义仪表盘   n  Logstash自定义数据处理   l  综合练习   n  收集APP产生的日志进行实时展现   n  Filebeat采集日志   n  Logstash处理数据   n  Kibana 自定义仪表盘展现   4、主讲内容   章节一:Elasticsearch入门   1.     快速入门   2.     核心讲解   3.     中文分词   4.     全文搜索   5.     Elasticsearch集群   章节二:Beats   1.     Beats 简介   2.     Filebeat采集Nginx日志   3.     Metricbeat采集Nginx指标数据   章节三:Kibana   1.     Kibana简介   2.     Metricbeat 仪表盘   3.     Nginx 指标仪表盘   4.     Nginx 日志仪表盘   5.     自定义图表   章节四:Logstash   1.     Logstash简介   2.     配置详解   3.     读取自定义日志   章节五:综合练习   1.     流程说明   2.     Filebeat采集日志   3.     Logstash处理数据   4.     Kibana 自定义仪表盘展现
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页