public boolean onChildClick(ExpandableListView parent, View v,
            int groupPosition, int childPosition, long id) {
            //do something
    // String pos=parent.getItemAtPosition(childPosition).toString();
   // Toast.makeText(Stu80Activity.this,groupPosition+childPosition+"", Toast.LENGTH_LONG).show(); 
     String pos=groupPosition+"-"+childPosition;
     String param="";
     if(pos=="0-0")
     {
     param="1";
     Toast.makeText(Stu80Activity.this,param+"", Toast.LENGTH_LONG).show(); 
     }
Toast.makeText(Stu80Activity.this,pos+"", Toast.LENGTH_LONG).show(); 
的时候明明是0-0  但是为什么  没有运行
if里的函数呢

解决方案 »

  1.   

    字符串比较不能用 ==,要用pos.eauals("0-0");   
      

  2.   

    +1,不仅仅JavaL里,字符串比较切记不能用==
      

  3.   

    ==比较的的是引用是否相等,若比较内容,请参考一楼的代码,实用equal方法。
      

  4.   

    String是一个字符串类,对于字符串类,使用 == 其实它两边判断的是这两边的字符串所指向的地址是不是一样的,很显然你的 == 两侧字符串地址不相同的。而你应该是想要的比较两个字符串的内容是不是一样的,所以在Java中可以用字符串的equals()函数来判断两个字符串内容是不是一样的。