/给出栈接口的定义,然后基于List接口及其实现类给出栈的两种实现类(采用ArrayList和LinkkedList 实现分别给出栈的实现类)
1 //给出栈接口的定义,然后基于List接口及其实现类给出栈的两种实现类(采用ArrayList和LinkkedList 2 //实现分别给出栈的实现类) 3 package classwork9; 4 5 public interface Zhan { 6 public abstract void push(); 7 public abstract void pop(); 8 } 9 10 11 package classwork9; 12 13 import java.util.ArrayList; 14 import java.util.List; 15 import java.util.Scanner; 16 17 public class Zhanarray implements Zhan { 18 19 public Zhanarray() { 20 21 } 22 Scanner in=new Scanner(System.in); 23 List<Integer> a = new ArrayList<Integer>(); 24 @Override 25 public void push() { 26 System.out.println("请输入入栈元素:"); 27 int x=in.nextInt(); 28 a.add(x); 29 } 30 31 @Override 32 public void pop() { 33 System.out.println("出栈元素为:"+a.get(a.size()-1)); 34 a.remove(a.size()-1); 35 36 } 37 38 } 39 40 41 package classwork9; 42 43 public class ZhanarrayTest { 44 45 public static void main(String[] args) { 46 Zhanarray a=new Zhanarray(); 47 a.push(); 48 a.push(); 49 a.push(); 50 a.pop(); 51 a.pop(); 52 } 53 54 } 55 56 57 package classwork9; 58 59 import java.util.LinkedList; 60 import java.util.List; 61 import java.util.Scanner; 62 63 public class ZhanLink implements Zhan { 64 65 public ZhanLink() { 66 67 } 68 List<Integer> a=new LinkedList<Integer>(); 69 Scanner in=new Scanner(System.in); 70 @Override 71 public void push() { 72 System.out.println("请输入入栈元素:"); 73 int x=in.nextInt(); 74 ((LinkedList<Integer>) a).addFirst(x); 75 } 76 77 @Override 78 public void pop() { 79 System.out.println("出栈元素为:"+((LinkedList<Integer>) a).getFirst()); 80 ((LinkedList<Integer>) a).removeFirst(); 81 82 } 83 84 } 85 86 87 package classwork9; 88 89 public class ZhanlinkTest { 90 91 public static void main(String[] args) { 92 ZhanLink a=new ZhanLink(); 93 a.push(); 94 a.push(); 95 a.push(); 96 a.pop(); 97 a.pop(); 98 99 } 100 101 }
道阻且长,行则将至

浙公网安备 33010602011771号