String sta_no=(String)request.getParameter("s_station");
out.print(sta_no);//结果都是aa,可是就是if判断却不等,去执行else的代码了?
if (sta_no.equals("aa"))
{ ..}
else
{..}

解决方案 »

  1.   

    getParameter()取得值是否存在!你先打印sta_no是否是null值!
      

  2.   

    对于String a, b;
    “a == b”用于判断变量a和b是否引用到同一个对象,或者都是null。(Java里头除了内建类型的变量外,其他的都是引用)
    “a.equals(b)”用于判断a所引用的串和b所引用的串是否包含相同的内容(只是内容相同,不一定是同一个串)。
      

  3.   

    呵呵,基本语法问题
    不过,得到页面的参数后,最好是做必要的处理,以免不必要的麻烦
    String sta_no=request.getParameter("s_station");
    sta_no=(sta_no!=null&&!sta_no.equals(""))?sta_no.trim():"";if(sta_no.equals("aa")){
        ......
    }else{
        ......
    }
      

  4.   

    应该用equals.()来比较!==比较的是地址,equals.()比较的是值
      

  5.   

    用equals函数来比较两个字符串
      

  6.   

    嘿嘿,jdk1.3的版本可以用"==",
    后面的版本不行了,不过得到参数后最好是做必要的处理,以免引起不必要的错误:
        String sta_no=request.getParameter("s_station");
        sta_no=(sta_no!=null&&!sta_no.equals(""))?sta_no.trim():"";
      

  7.   

    对,==判断的是存储地址,equals判断的才是内容
      

  8.   

    比较字符串是否相等用equals方法。
      

  9.   

    class test_equal{
    public static void main(String[] args){
    if(a == b){
    System.out.println("it's equal");
    }
    else
    System.out.println("it's not equal");
    }
    private static String  a="string";
    private static String  b="string";
    }
    所有相同的String指向同一地址。it's equal
      

  10.   

    Java中String是一个对象, 你要比较时需要equals来进行, 直接用==号的话, 比较的是地址!
      

  11.   

    用equals函数来比较两个字符串,"=="比较得到的是两个对象的reference指向的是不是同一个目标。
      

  12.   

    非空的话trim()一下再比较。
    btw:一般用常量去比,可以不用判断是否空值.
    if ("aa".equals(sta_no))