BufferedReader br=new BufferedReader(
                     new InputStreamReade(System.in));
应该是
BufferedReader br=new BufferedReader(
                     new InputStreamReader(System.in));
少个字母,呵呵

解决方案 »

  1.   


    if(j*2==s.length())//这里就改为j*2==s.length();
            {
               
               System.out.println("y");
            }
            else
            {
               
               System.out.println("n");
            }接两百分
      

  2.   

    完整代码:import java.util.*;
    import java.io.*;public class TestPop {
      public static void main(String args[]) throws Exception {
        BufferedReader br = new BufferedReader(
            new InputStreamReader(System.in));
        String s;
        System.out.println("请您随便输入一行字符串:");
        System.out.flush();
        s = br.readLine();
        Stack stack = new Stack();
        for (int i = 0; i < s.length(); i++) {
          char c = s.charAt(i);
          switch (c) {
            case '?':
              break;
            case ':':
              break;
            case ' ':
              break;
            case ',':
              break;
            default:
              stack.push(new Character(c));
              break;
          }
        }    int j = 0;
        char char1;
        char char2;
        for (int i = 0; i < stack.size(); i++) { //我判断问题在这里,但是没改好
          char1 = s.charAt(i);
          char2 = ( (Character) stack.pop()).charValue();
          if (char1 == char2)
            j++;
        }
        if (j * 2 == s.length()) {      System.out.println("y");
        }
        else {      System.out.println("n");
        }
      }
    }
      

  3.   

    不行,当我输入asa时,显示不是回文!
    输入assa时显示是回文!
      

  4.   

    输入asssa时显示bu是回文!
    输入assssa时显示是回文!
      

  5.   

    应该如下修改。
    package com.test.csdn.string;import java.util.*;
    import java.io.*;public class Myhuiwen
    {
        public static void main(String args[]) throws Exception
        {
            BufferedReader br = new BufferedReader(
                new InputStreamReader(System.in));
            String s;
            System.out.println("请您随便输入一行字符串:");
            System.out.flush();
            s = br.readLine();
            Stack stack = new Stack();
            for (int i = 0; i < s.length(); i++)
            {
                char c = s.charAt(i);
                switch (c)
                {
                    case '?':
                        break;
                    case ':':
                        break;
                    case ' ':
                        break;
                    case ',':
                        break;
                    default:
                        stack.push(new Character(c));                    break;
                }
            }        int j = stack.size();
            for (int i = 0; i < s.length(); i++) //我判断问题在这里,但是没改好
            {
                char c = s.charAt(i);
                switch (c)
                {
                    case '?':
                        break;
                    case ':':
                        break;
                    case ' ':
                        break;
                    case ',':
                        break;
                    default:
                        if (s.charAt(i) == ( (Character) stack.pop()).charValue())
                        {
                            j--;
                        }
                        break;
                }        }        if (j == 0)
            {            System.out.println("y");
            }
            else
            {            System.out.println("n");
            }
        }
    }
      

  6.   

    yuanmeng163(今天我有空)和 feiyuegaoshan(飞跃)
    非常感谢你们!散分了:)
      

  7.   

    楼上的可行,不过需要细心,如果楼主大哥是位大老粗的话,不妨取到字符串之后先把其中要忽略的字符(? ',)去掉,生成新的字串,source就可以原封原样的使用了!!
      

  8.   

    yuanmeng163 ,你的代码有问题。
      

  9.   

    feiyuegaoshan(飞跃)
    说对了,他的确实有问题
      

  10.   

    你再试试下面的代码:import java.util.*;
    import java.io.*;public class TestPop {
      public static void main(String args[]) throws Exception {
        BufferedReader br = new BufferedReader(
            new InputStreamReader(System.in));
        String s = new String();
        StringBuffer strBuff = new StringBuffer();
        System.out.println("请您随便输入一行字符串:");
        System.out.flush();
        s = br.readLine();
        Stack stack = new Stack();
        for (int i = 0; i < s.length(); i++) {
          char c = s.charAt(i);
          switch (c) {
            case '?':
              break;
            case ':':
              break;
            case ' ':
              break;
            case ',':
              break;
            default:
              stack.push(new Character(c));
              strBuff.append(c);
              break;
          }
        }    char char1;
        char char2;
        boolean isHuiwen = true;
        int len = stack.size();
        if(len == 0 || len % 2 != 0) {
          isHuiwen = false;
        } else {
          for (int i = 0; i < len; i++) { //我判断问题在这里,但是没改好
            char1 = strBuff.charAt(i);
            char2 = ( (Character) stack.pop()).charValue();
            if (! (char1 == char2)) {
              isHuiwen = false;
              break;
            }
          }
        }
        if (isHuiwen) {      System.out.println("y");
        }
        else {      System.out.println("n");
        }
      }
    }