ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Java Stack详解:后进先出数据结构全解析

Java Stack详解:后进先出数据结构全解析 Java语言里面的那个用于处理元素的队列接口, 还有被称为是向量那种数据结构。Java Stack堆栈在这个教程当中, 我们会通过示例的办法来学习Java编程语言里面的Stack这个类以及它的各种方法。Java集合框架存在一个叫做Stack的类, 这个类的功能是可以提供堆栈这样的数据结构。本Stack类, 这个类型,它是继承类的其中一种。堆栈的实现针对堆栈而言, 其中的元素是采用一种被称为后进先出的机制来实现存储操作以及访问操作的, 这就使得当有新的元素被加入到这个堆栈之中的时候, 该元素必然会被放置在堆栈的顶端位置, 同时, 若是需要从堆栈中将某些元素予以移除, 那么也务必是从堆栈的顶端位置开始进行此项操作。去创建一个堆栈出来。咱们要是想要弄出一个堆栈, 那必须第一步就把那个叫什么java.util.Stack的包给导入进去, 等把这包导完了, 接下来就可以用Java这个玩意去创建一个堆栈。Stack stacks new Stack();在这里面, Type的意思是用来表示堆栈的类型是什么样子的, 举例来说。//创建整数类型堆栈Stack stacks new Stack();//创建字符串类型堆栈Stack stacks new Stack();堆栈方法因为Stack继承了类, 所以它把全部方法全都继承了过来。如果想要知道这些方法都有哪些特别不一样的地方, 那就去访问那个叫Java Class的地方看一看吧。除了这些方法之外, 堆栈这个分类里还包含了五个不一样的方法。push()方法我们使用 push() 这个方法, 将元素添加到堆栈的顶部。例如。import java.util.Stack;class Main {public static void main(String[] args) {Stack animals new Stack();//将元素添加到Stackanimals.push(Dog);animals.push(Horse);animals.push(Cat);System.out.println(Stack: animals);}}输出结果Stack: [Dog, Horse, Cat]pop()方法我们需要使用 pop() 这个方法来, 从堆栈的顶部, 去掉那个元素, 比如像这样。import java.util.Stack;class Main {public static void main(String[] args) {Stack animals new Stack();//将元素添加到 Stackanimals.push(Dog);animals.push(Horse);animals.push(Cat);System.out.println(初始堆栈: animals);//删除堆栈元素后进先出String element animals.pop();System.out.println(删除元素: element);}}输出结果初始堆栈: [Dog, Horse, Cat]删除元素: Catpeek()方法该 peek() 方法是从栈的顶部返回一个对象。例如。import java.util.Stack;class Main {public static void main(String[] args) {Stack animals new Stack();//将元素添加到Stackanimals.push(Dog);animals.push(Horse);animals.push(Cat);System.out.println(Stack: animals);//从顶部访问元素后进先出的原则String element animals.peek();System.out.println(顶部元素: element);}}输出结果Stack: [Dog, Horse, Cat]顶部元素: Cat()方法为了能够搜索位于堆栈之中的那些元素, 我们必须去呼叫那个带有括号标记的方法操作, 因为这个办法能够从构成堆栈的最顶端开始回溯, 从而找出特定元素所处的位置数值情况, 比如说这样的情况就是。import java.util.Stack;class Main {public static void main(String[] args) {Stack animals new Stack();//将元素添加到Stackanimals.push(Dog);animals.push(Horse);animals.push(Cat);System.out.println(Stack: animals);//搜索元素int position animals.search(Horse);System.out.println(元素Horse的位置: position);}}输出结果Stack: [Dog, Horse, Cat]元素Horse的位置: 2empty()方法咱们得用一个叫做empty()这么个办法, 去检查一下那个堆放东西的区域, 它到底有没有什么东西在里面。比方说嘛。import java.util.Stack;class Main {public static void main(String[] args) {Stack animals new Stack();//将元素添加到Stackanimals.push(Dog);animals.push(Horse);animals.push(Cat);System.out.println(Stack: animals);//检查堆栈是否为空boolean result animals.empty();System.out.println(堆栈是空的吗? result);}}输出结果Stack: [Dog, Horse, Cat]堆栈是空的吗? false请使用该方式来实现替换操作, 而不是使用 Stack 这种做法。这个叫做Stack的类, 它提供的是直接执行堆栈这种数据结构的功能。但是, 我们建议你最好不要使用它。更好的做法是去使用那个实现了Deque接口的类来在Java里头实现堆栈这一种数据结构。
返回列表