for( int i = 0; i < Stack.size(); i++ ) 
这么简单的问题贴了好几贴?

解决方案 »

  1.   

    看你自己原来发的几个帖子!我都答了好几次了!!---顺便别忘了结贴.:)I fule U
      

  2.   

    问题就在这里      for( int i = 0; i < s.length(); i++ ) //我判断问题在这里,但是没改好
               if( s.charAt( i ) ==((Character)stack.pop()).charValue() )  
                     j++;s.length() 比 stack中的元素数多。
    所以后面几个stack.pop会抛出EmptyStackException
    至于怎么改,就看你的程序要干啥了        !
      

  3.   

    看看这样符合不符合你的要求。
    输入的字符串是" ,aa:aa, dd? ,ss"
    我没用你提供的方法,太麻烦,而且不容易检查错误.import java.util.*;
    import java.io.*;public class Myhuiwen{
       public static void main(String args[]){
         String str = " ,aa:aa, dd? ,ss";
         str = str.replace(',', ' ');
         str = str.replace('?', ' ');
         str = str.replace(':', ' ');
         StringTokenizer st = new StringTokenizer(str);
         String newStr = "";
         for(;st.hasMoreTokens();){
           newStr = newStr+st.nextToken();
         }
         System.out.println(newStr);
       }
    }
      

  4.   

    用StreamTokenizer 过滤不就可以了?