Click here to Skip to main content
15,440,825 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Write a method evaluateString which returns a numeric result from evaluating a numeric expression written as string. The strings will comprise a sequence of digits, followed by a single character operator, followed by a sequence of digits. The operator will be one of the following four characters: + - * / specifying addition, subtraction, multiplication or division respectively
For example, the call evaluateString( "34+17") should return the int value of 51.

What I have tried:

Not sure where to begin. Some help would be appreciated.
Updated 27-Apr-22 5:29am

You start by breaking the expression into its separate parts. Each time you encounter a sequence of digits you need to extract them and convert them to a numeric value: see Integer (Java Platform SE 7 )[^]. when you find a mathematical operator you need to save it and evaluate the next number. you can then use that information to calculate the result.
Share this answer
To add to what Richard has said, while we are more than willing to help those that are stuck, that doesn't mean that we are here to do it all for you! We can't do all the work, you are either getting paid for this, or it's part of your grades and it wouldn't be at all fair for us to do it all for you.

So we need you to do the work, and we will help you when you get stuck. That doesn't mean we will give you a step by step solution you can hand in!
Start by explaining where you are at the moment, and what the next step in the process is. Then tell us what you have tried to get that next step working, and what happened when you did.

If you are having problems getting started at all, then this may help: How to Write Code to Solve a Problem, A Beginner's Guide[^]
Share this answer

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900