帮我查一个stack的错误
为什么我最后的a不能return呢? import java.util.EmptyStackException;
import java.util.Stack;
import *;
import java.util.Scanner;
import java.util.StringTokenizer;
public class ITP
{
//public ITP();
public static String infixToPostfix(String str)
{
int i=0, j=0;
String[] input=new String[100];
String a;
ArrayStack<String> S = new ArrayStack<String>();
ArrayStack<String> A = new ArrayStack<String>();
StringTokenizer strTokenizer=new StringTokenizer(str, " ");
while(strTokenizer.hasMoreTokens())
{
input[i]=strTokenizer.nextToken();
i++;
}
while(j<input.length)
{
if(input[j]!="+" || input[j]!="-" || input[j]!="*" ||input[j]!="/")
{
S.push(input[j]);
i++;
}
else if(input[j]=="+")
{
A.push(input[j]);
a=S.pop()+A.pop()+input[j+1];
j++;
}
}
return a;
}
}