一、Stack类 1.Stack是Vector的一个子类,它实现标准的后进先出堆栈。Stack只定义了创建空堆栈的默认构造方法。 Stack() 2.Stack类里面主要实现的有以下的几个方法: (1)boolean empty( )方法是判断堆栈是否为空。 (2)Object peek( )方法是返回栈顶端的元素,但不从堆栈中移除它。 (3)Object pop( )方法是移除堆栈顶部的对象,并作为此函数的值返回该对象。 (4)Object push (Object element)方法是把元素压入栈。 (5)int search(Object element)方法是返回对象在堆栈中的位置,它是以1为基数。 二、Stack类boolean empty()方法 1.boolean empty()方法是判断堆栈是否为空,就需要有一个变量来计算当前栈的长度,若变量的值为0,说明这个栈是空的。 2.例子的实现: import java.util.Stack; public class T7 { public static void main(String[] args) { // TODO Auto-generated method stub //定义一个String泛型的Stack Stack<String> stack = new Stack<String>(); //判断新建的栈是否为空 boolean flag=stack.empty(); if(flag){ System.out.println("新建的栈是为空"); }else{ System.out.println("新建的栈是不为空,它的长度是:"+stack.size()); } } } 运行的结果如下所示: 三、Stack类Object peek()方法 1.Object peek( )方法是返回栈顶端的元素,对堆栈中本身不做任何的改动。若栈里有元素就返回最顶端的元素。 2.例子的实现 import java.util.Stack; public class T8 { public static void main(String[] args) { // TODO Auto-generated method stub //定义一个String泛型的Stack Stack<String> stack = new Stack<String>(); //把元素压入栈中 stack.push("Java"); stack.push("Python"); stack.push("PHP"); stack.push("软件测试"); stack.push("软件工程"); //返回栈顶端的元素,但不从堆栈中移除它 String topE=stack.peek(); System.out.println("返回堆栈中的栈顶元素为 : "+topE); } } 运行的结果如下所示: 四、Stack类Object pop()方法 1.Object pop()方法移除堆栈顶部的对象,并作为此函数的值返回该对象。 2.例子的实现 import java.util.Stack; public class T8 { public static void main(String[] args) { // TODO Auto-generated method stub //定义一个String泛型的Stack Stack<String> stack = new Stack<String>(); //把元素压入栈中 stack.push("Java"); stack.push("Python"); stack.push("PHP"); stack.push("软件测试"); stack.push("软件工程"); System.out.println("堆栈中的元素有:"+stack); //移除堆栈顶部的元素,但不从堆栈中移除它 String remove=stack.pop(); System.out.println("移除堆栈顶部的元素有:"+remove); System.out.println("移除后堆栈中的元素有:"+stack); } } 运行的结果如下所示: 五、Stack类Object push (Object element)方法 1.push(Object element)方法把入栈的元素添加到数组的末尾,数组的长度就加1。 2.例子的实现 import java.util.Stack; public class T9 { public static void main(String[] args) { // TODO Auto-generated method stub //定义一个Integer泛型的Stack Stack<Integer> stack = new Stack<Integer>(); //把元素压入栈中 stack.push(10); stack.push(20); stack.push(30); stack.push(40); System.out.println("堆栈中的元素有:"+stack); } } 运行的结果如下所示: 六、Stack类int search(Object element)方法 1.int search(Object element)方法是返回对象在堆栈中的位置,它是以1为基数。 2.例子的实现 import java.util.Stack; public class T9 { public static void main(String[] args) { // TODO Auto-generated method stub //定义一个Integer泛型的Stack Stack<Integer> stack = new Stack<Integer>(); //把元素压入栈中 stack.push(10); stack.push(20); stack.push(30); stack.push(40); System.out.println("堆栈中的元素有:"+stack); //返回对象在堆栈中的位置,它是以1为基数 int find=stack.search(20); System.out.println("返回对象在堆栈中的位置:"+find); } } 运行的结果如下所示: 七、总结 本文主要介绍了Stack类、Stack类的常用方法,例如boolean empty()方法、Object peek()方法、Object pop()方法、Object push (Object element)方法、int search(Object element)方法。Stack是Vector的一个子类,它实现标准的后进先出堆栈。empty()方法判断堆栈是否为空、peek()方法返回栈顶端的元素,对堆栈中本身不做任何的改动、pop()方法移除堆栈顶部的对象、push()方法把元素压入栈中、search()方法是返回对象在堆栈中的位置,它是以1为基数。通过本文的学习,希望对你有所帮助! 文章来源:网络 版权归原作者所有 上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理 |
|