修正一下:
String todo="refresh";
int dMode=3;
String buffering=null;if (todo == null)
{System.out.println("todo==null");}
else if ( (dMode == 3) && (buffering == null) )
{System.out.println((dMode == 3));}
else
{System.out.println((dMode == 3)+"else");
 System.out.println("else");}

解决方案 »

  1.   

    看不明白,你的输出结果中的最后一个true是哪里来的呢?
    应该是
    trueelseelse
    吧?
      

  2.   

    if (todo == null)
    {System.out.println("todo==null");}//因为todo != null,所以不执行这句,程序继续运行
    else if ( (dMode == 3) && (buffering == null) )//条件成立执行括号内的语句
                        ^-----这里如果改为4,那么将执行else里的语句
    {System.out.println((dMode == 3));}//因为dMode为3,输出true。且后面的不执行。else//如果前两个条件都不成立,那么执行括号内的语句{System.out.println((dMode == 3)+"else");//dMode为3,所以输出true,整句为trueelse
     System.out.println("else");}//换行输出else