自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

盤點(diǎn)Java基礎(chǔ)中的Stack類及其常用方法

開發(fā) 后端
Stack是Vector的一個(gè)子類,它實(shí)現(xiàn)標(biāo)準(zhǔn)的后進(jìn)先出堆棧。Stack只定義了創(chuàng)建空堆棧的默認(rèn)構(gòu)造方法。

[[409259]]

大家好,我是Java進(jìn)階者!

一、Stack類

1.Stack是Vector的一個(gè)子類,它實(shí)現(xiàn)標(biāo)準(zhǔn)的后進(jìn)先出堆棧。Stack只定義了創(chuàng)建空堆棧的默認(rèn)構(gòu)造方法。

  1. Stack() 

2.Stack類里面主要實(shí)現(xiàn)的有以下的幾個(gè)方法:

(1)boolean empty( )方法是判斷堆棧是否為空。

(2)Object peek( )方法是返回棧頂端的元素,但不從堆棧中移除它。

(3)Object pop( )方法是移除堆棧頂部的對(duì)象,并作為此函數(shù)的值返回該對(duì)象。

(4)Object push (Object element)方法是把元素壓入棧。

(5)int search(Object element)方法是返回對(duì)象在堆棧中的位置,它是以1為基數(shù)。

二、Stack類boolean empty()方法

1.boolean empty()方法是判斷堆棧是否為空,就需要有一個(gè)變量來計(jì)算當(dāng)前棧的長度,若變量的值為0,說明這個(gè)棧是空的。

2.例子的實(shí)現(xiàn):

  1. import java.util.Stack; 
  2. public class T7 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         //定義一個(gè)String泛型的Stack 
  6.         Stack<String> stack = new Stack<String>(); 
  7.         //判斷新建的棧是否為空 
  8.         boolean flag=stack.empty(); 
  9.         if(flag){ 
  10.             System.out.println("新建的棧是為空"); 
  11.         }else
  12.             System.out.println("新建的棧是不為空,它的長度是:"+stack.size()); 
  13.         } 

運(yùn)行的結(jié)果如下所示:

二、Stack類Object peek()方法

1.Object peek( )方法是返回棧頂端的元素,對(duì)堆棧中本身不做任何的改動(dòng)。若棧里有元素就返回最頂端的元素。

2.例子的實(shí)現(xiàn)

  1. import java.util.Stack; 
  2. public class T8 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         //定義一個(gè)String泛型的Stack 
  6.         Stack<String> stack = new Stack<String>(); 
  7.         //把元素壓入棧中 
  8.         stack.push("Java"); 
  9.         stack.push("Python"); 
  10.         stack.push("PHP"); 
  11.         stack.push("軟件測試"); 
  12.         stack.push("軟件工程"); 
  13.         //返回棧頂端的元素,但不從堆棧中移除它 
  14.         String topE=stack.peek(); 
  15.         System.out.println("返回堆棧中的棧頂元素為 : "+topE); 

運(yùn)行的結(jié)果如下所示:

三、Stack類Object pop()方法

1.Object pop()方法移除堆棧頂部的對(duì)象,并作為此函數(shù)的值返回該對(duì)象。

2.例子的實(shí)現(xiàn)

  1. import java.util.Stack; 
  2. public class T8 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         //定義一個(gè)String泛型的Stack 
  6.         Stack<String> stack = new Stack<String>(); 
  7.         //把元素壓入棧中 
  8.         stack.push("Java"); 
  9.         stack.push("Python"); 
  10.         stack.push("PHP"); 
  11.         stack.push("軟件測試"); 
  12.         stack.push("軟件工程"); 
  13.         System.out.println("堆棧中的元素有:"+stack); 
  14.         //移除堆棧頂部的元素,但不從堆棧中移除它 
  15.         String remove=stack.pop(); 
  16.         System.out.println("移除堆棧頂部的元素有:"+remove); 
  17.         System.out.println("移除后堆棧中的元素有:"+stack); 

運(yùn)行的結(jié)果如下所示:

四、Stack類Object push (Object element)方法

1.push(Object element)方法把入棧的元素添加到數(shù)組的末尾,數(shù)組的長度就加1。

2.例子的實(shí)現(xiàn)

  1. import java.util.Stack; 
  2. public class T9 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         //定義一個(gè)Integer泛型的Stack 
  6.         Stack<Integer> stack = new Stack<Integer>(); 
  7.         //把元素壓入棧中 
  8.         stack.push(10); 
  9.         stack.push(20); 
  10.         stack.push(30); 
  11.         stack.push(40); 
  12.         System.out.println("堆棧中的元素有:"+stack); 

運(yùn)行的結(jié)果如下所示:

五、Stack類int search(Object element)方法

1.int search(Object element)方法是返回對(duì)象在堆棧中的位置,它是以1為基數(shù)。

2.例子的實(shí)現(xiàn)

  1. import java.util.Stack; 
  2. public class T9 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         //定義一個(gè)Integer泛型的Stack 
  6.         Stack<Integer> stack = new Stack<Integer>(); 
  7.         //把元素壓入棧中 
  8.         stack.push(10); 
  9.         stack.push(20); 
  10.         stack.push(30); 
  11.         stack.push(40); 
  12.         System.out.println("堆棧中的元素有:"+stack); 
  13.         //返回對(duì)象在堆棧中的位置,它是以1為基數(shù) 
  14.         int find=stack.search(20); 
  15.         System.out.println("返回對(duì)象在堆棧中的位置:"+find); 

運(yùn)行的結(jié)果如下所示:

六、總結(jié)

本文主要介紹了Stack類、Stack類的常用方法,例如boolean empty()方法、Object peek()方法、Object pop()方法、Object push (Object element)方法、int search(Object element)方法。Stack是Vector的一個(gè)子類,它實(shí)現(xiàn)標(biāo)準(zhǔn)的后進(jìn)先出堆棧。empty()方法判斷堆棧是否為空、peek()方法返回棧頂端的元素,對(duì)堆棧中本身不做任何的改動(dòng)、pop()方法移除堆棧頂部的對(duì)象、push()方法把元素壓入棧中、search()方法是返回對(duì)象在堆棧中的位置,它是以1為基數(shù)。通過本文的學(xué)習(xí),希望對(duì)你有所幫助!

本文轉(zhuǎn)載自微信公眾號(hào)「Java進(jìn)階學(xué)習(xí)交流」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系Java進(jìn)階學(xué)習(xí)交流公眾號(hào)。

 

責(zé)任編輯:武曉燕 來源: Java進(jìn)階學(xué)習(xí)交流
相關(guān)推薦

2021-08-05 09:55:54

云計(jì)算

2021-04-15 10:00:46

Java基礎(chǔ)ListJava開發(fā)

2021-04-12 10:02:02

JavaList集合

2021-08-16 09:35:34

Collections Java開發(fā)

2021-07-15 10:01:31

Vector搜索向量

2021-10-11 08:58:33

Vector類搜索方法

2021-07-22 09:53:34

Vector類Java添加元素

2024-06-03 10:07:22

Vector類元素向量

2021-04-29 10:01:30

JavaMathJava編程

2021-07-29 10:00:24

Arrays工具類元素

2021-07-12 11:01:15

Vector元素方法

2021-08-19 10:30:13

Java集合排序程序開發(fā)

2010-07-30 13:20:31

.NET正則

2020-09-02 14:20:21

JavaHashSetTreeSet

2021-10-09 07:10:31

JavaScript對(duì)象Python

2015-03-03 09:19:12

UIScrollVie

2015-03-24 15:08:21

mapreducehadoop

2021-04-22 09:57:37

Random方法游戲

2020-05-20 13:24:28

MySQL優(yōu)化數(shù)據(jù)庫

2021-03-22 09:56:01

Java基礎(chǔ)System類Static
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)