package elte.java2_utikalauz5.collection; import java.util.*; /** Verem implementációja LinkedList-tel. Postfix kifejezéseket értékel ki, amelyek egész számok összeadását és szorzását tartalmazzák. A kifejezések elemeit a parancssorban paraméterekként kell megadnunk, a szorzásra a pont karakter szolgál. @link.forrásfájl {@docRoot}/../data/collection/src Verem.java @link.letöltés {@docRoot}/../data/collection Verem.jar @since Java 2 Útikalauz programozóknak */ public class Verem extends LinkedList { /** Verziószám. */ private final static long serialVersionUID = 15L; public Verem(Collection c) { super(c); } public void push(E o) { addFirst(o); } public Object top() { return getFirst(); } public Object pop() { return removeFirst(); } public static void main(String[] args) { Collection c = Arrays.asList(args); Verem v = new Verem(c); String s1 = null, s2 = null, s3 = null; try { s1 = (String)(v.pop()); while(!v.isEmpty()) { s2 = (String)(v.pop()); s3 = (String)(v.pop()); if(s3.compareTo("+")==0) { s1 = new String(String.valueOf( Integer.valueOf(s1).intValue() + Integer.valueOf(s2).intValue())); } else if(s3.compareTo(".")==0) { s1 = new String(String.valueOf( Integer.valueOf(s1).intValue() * Integer.valueOf(s2).intValue())); } } System.out.println("Eredmény: " + s1); } catch(Exception e) { System.out.println("Hibás kifejezés!"); } } }