在条件下开始活动

Raj*_*esh -6 java string if-statement

我有三个行为.当我点击按钮时,它们打开没有任何问题,但是当我想按条件打开一个活动时它不起作用.

if(s2=="Both") {

   Intent i = new Intent();
   i.setClassName("com.gotit.babynames", "com.gotit.babynames.BabyNameActivity");
   startActivity(i);

   setTitle(s2);

} else if(s2=="Boys") {

    Intent j = new Intent();
    j.setClassName("com.gotit.babynames", "com.gotit.babynames.Boys");
    startActivity(j);

    setTitle(s2);

} else  {
    Intent k = new Intent();
    k.setClassName("com.gotit.babynames", "com.gotit.babynames.Girls");
    startActivity(k);

    setTitle(s2);
}
Run Code Online (Sandbox Code Playgroud)

Luc*_*fer 21

试试这个:

if ( "Both".equals ( s2 ) )
{
    //Do something
}
Run Code Online (Sandbox Code Playgroud)

s2 == "Both" 不会比较Java中的文本.

您也可以使用它来忽略套管:

if ( "Both".equalsIgnoreCase ( s2 ) ) 
{
     //Do something
}
Run Code Online (Sandbox Code Playgroud)


Ent*_*eco 5

更好的是:

// "Both".equals() will prevent NullPointerException
if ( "Both".equals ( s2 ) )
{
}
Run Code Online (Sandbox Code Playgroud)

这样,在s2为null的情况下,可以避免NullPointerException