字符串比较应该用equals方法。
if (jTextField1.getText()=="strange")
改为
if (jTextField1.getText().equals("strange"))

解决方案 »

  1.   

    是啊两个字符串的比较应该是"equals()",而不能用"=="
      

  2.   

    同意以上。
    我也遇见类似的问题,这个问题是不是类似:判断一个字符串是否为空,不能用if(str==null),而要用str.length==0.??
    我也不是很清楚,希望给个解释。
      

  3.   

    if不能执行,显然是if条件为false导致的嘛,难道还是编译器又问题不成,至于那错了,楼上的老兄们都讲得很清楚了,这种简单的问题要学会自己定位,,,,,赫赫,看起来我好像高手,其实也是刚刚入门:)
      

  4.   

    To lml97(菱子) 
    你的str.length==0是判断该字符串是否为空串
    null是对象的一种特殊的状态
    另外,判断对象也可用==,不过,这是判断两个对象是否指向同一个地址,是否完全相同,和equals的概念不同。
      

  5.   

    这好象是和内存地址有关系的,“==”一般比较两个对象的内存地址是否一样,equals比较两个对象的值。比如一个String变量s1="hehe",而s2="hehe",则他们指的是同一个内存地址,如果用“==”和equals()来比较都返回true,但是,当你声明s2=new String("hehe"),则分配的内存地址就不一样了,用“==”比较就会返回false,用equals()比较就返回true,所以一般情况之下比较两个对象是否的值是否一样应该用equals().public class Test{
      public static void main(String[] args){
           String s1="hehe";
           String s2=new String("hehe");
           System.out.println(s1==s2);
           System.out.println(s2.equals(s1));
      }
    }
    输出是:false,true
    将s2=new String("hehe") 换成s2="hehe"则输出就变成:true,true
      

  6.   

    我来晚了,
    我同意xujian_xj(大灰狼) 的讲法,确实是这个问题。
      

  7.   

    正如上述所说:判断字符串相等是用 eaquals()
      

  8.   

    if (jTextField1.getText().equals("strange"))