Im trying to figure out a java homework assignment where I have to evaluate postfix expressions using stacks and Stringtokenizer as well as a isNumber method. when I try to run it it gives me an error. this is the code I have so far:   static double evaluatePostfixExpression(String expression){     // Write your code       Stack aStack = new Stack();       double value1, value2;     String token;     StringTokenizer tokenizer = new StringTokenizer(expression);     while (tokenizer.hasMoreTokens()) {       token = tokenizer.nextToken();       if(isNumber(expression)) {         value1 = (double)aStack.pop();         value2 = (double)aStack.pop();         if (token.equals("+")) {           aStack.push(value2+value1);         } else if (token.equals("-")) {           aStack.push(value2-value1);         } else if (token.equals("*")) {           aStack.push(value2*value1);         } else if (token.equals("/")) {           aStack.push(value2/value1);         }       }           }     Object lastValue = aStack.pop();     if (!aStack.isEmpty()) {       System.out.println("Stack has more operands than operators");       return Double.NEGATIVE_INFINITY;     }     else       return (double) lastValue;         //return -1;   }

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Im trying to figure out a java homework assignment where I have to evaluate postfix expressions using stacks and Stringtokenizer as well as a isNumber method. when I try to run it it gives me an error.

this is the code I have so far:

 

static double evaluatePostfixExpression(String expression){
    // Write your code  
    Stack aStack = new Stack();
 
    double value1, value2;
    String token;
    StringTokenizer tokenizer = new StringTokenizer(expression);
    while (tokenizer.hasMoreTokens()) {
      token = tokenizer.nextToken();
      if(isNumber(expression)) {
        value1 = (double)aStack.pop();
        value2 = (double)aStack.pop();

        if (token.equals("+")) {
          aStack.push(value2+value1);
        } else if (token.equals("-")) {
          aStack.push(value2-value1);
        } else if (token.equals("*")) {
          aStack.push(value2*value1);
        } else if (token.equals("/")) {
          aStack.push(value2/value1);
        }
      }

     
    }
    Object lastValue = aStack.pop();
    if (!aStack.isEmpty()) {
      System.out.println("Stack has more operands than operators");
      return Double.NEGATIVE_INFINITY;
    }
    else
      return (double) lastValue;
   
    //return -1;
  }
Expert Solution
steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Knowledge Booster
Stack
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education