Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- import java.util.Stack;
- import java.util.StringTokenizer;
- public class DataCreate {
- private Stack<String> myStack = new Stack<String>();
- private List<String> myList = new ArrayList<String>();
- private List<String> endList = new ArrayList<String>();
- public DataCreate(String operation)
- {
- StringTokenizer st = new StringTokenizer(operation,"*/+-",true);
- while(st.hasMoreTokens())
- {
- myList.add(st.nextToken());
- }
- for(String object: myList)
- {
- //System.out.println(object);
- if(object.equalsIgnoreCase("+")||object.equalsIgnoreCase("-")||object.equalsIgnoreCase("*")||object.equalsIgnoreCase("/"))
- {
- if(myStack.isEmpty())
- myStack.push(object);
- else
- {
- if(compareOperator(object) > compareOperator(myStack.lastElement()))
- myStack.push(object);
- else
- {
- endList.add(object);
- myStack.push(object);
- }
- }
- }
- else
- endList.add(object);
- }
- //System.out.println(checkStack());
- wypisz();
- }
- public int compareOperator(String operation)
- {
- if(operation.equals("+") || operation.equals("-") || operation.equals("*") || operation.equals("/"))
- {
- if(operation.equals("+") || operation.equals("-"))
- return 1;
- else
- return 2;
- }
- else
- return -1;
- }
- public void wypisz()
- {
- for(String object: endList)
- System.out.println(object);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement