2014-04-01 99 views
0

我想做一个if语句来更改3个变量的值。问题是,我不明白,即使条件为真任意值:如果语句不返回值

这里,我感到我要检查的字符串:

final String[] pos_categ ; 
    pos_categ = intent1.getExtras().getStringArray("categ"); 

在这里我实现了我想改变的变量:

String[] title = null; 
    String[] eng = null; 
    final String[] dan = null; 

这里的if语句:

if (pos_categ[0]==lessons_titles[0]){ 
     title[0] = lessons_titles[position[0]]; 
     eng[0] = eng_version[position[0]]; 
     dan[0] = dan_version[position[0]].toLowerCase(); 
    } 
    if (pos_categ[0]==lessons_titles2[0]){ 
     title[0] = lessons_titles2[position[0]]; 
     eng[0] = eng_version2[position[0]]; 
     dan[0] = dan_version2[position[0]].toLowerCase(); 
    } 
    if (pos_categ[0]==lessons_titles3[0]){ 
     title[0] = lessons_titles3[position[0]]; 
     eng[0] = eng_version3[position[0]]; 
     dan[0] = dan_version3[position[0]].toLowerCase(); 
    } 
    if (pos_categ[0]==lessons_titles4[0]){ 
     title[0] = lessons_titles4[position[0]]; 
     eng[0] = eng_version4[position[0]]; 
     dan[0] = dan_version4[position[0]].toLowerCase(); 
    } 
    if (pos_categ[0]==lessons_titles5[0]){ 
     title[0] = lessons_titles5[position[0]]; 
     eng[0] = eng_version5[position[0]]; 
     dan[0] = dan_version5[position[0]].toLowerCase(); 
    } 
    if (pos_categ[0]==lessons_titles6[0]){ 
     title[0] = lessons_titles6[position[0]]; 
     eng[0] = eng_version6[position[0]]; 
     dan[0] = dan_version6[position[0]].toLowerCase(); 
    } 

    title_view.setText(title[0]); 
    eng_view.setText(eng[0]); 
    dan_view.setText(dan[0]); 

谁能告诉我在哪里,我做了一个错误?

+0

你在哪里初始化了title,eng,dan的值? – kAnNaN

+0

第一件事:你应该使用别的,而不是如果 –

回答

4

在Java中,使用string.equals()的内容来检查字符串平等:

if (pos_categ[0].equals(lessons_titles[0])){ 
    .... 
} 
+0

这是正确的! “string == string”比较实际的对象,而不是它们的字符串内容! –

+4

@AndiKrusch更好地说'参考'=) –

0

使用.equals字符串花花公子像String1.equals(string2)当过我们使用harcode字符串如"string"然后==.equals都是相同的,但每当我们使用字符串对象,然后一直使用.equals

0

使用下面的代码:

if (pos_categ[0].equals(lessons_titles[0])){ 
      title[0] = lessons_titles[position[0]]; 
      eng[0] = eng_version[position[0]]; 
      dan[0] = dan_version[position[0]].toLowerCase(); 
     } 
     if (pos_categ[0].equals(lessons_titles2[0])){ 
      title[0] = lessons_titles2[position[0]]; 
      eng[0] = eng_version2[position[0]]; 
      dan[0] = dan_version2[position[0]].toLowerCase(); 
     } 
     if (pos_categ[0].equals(lessons_titles3[0])){ 
      title[0] = lessons_titles3[position[0]]; 
      eng[0] = eng_version3[position[0]]; 
      dan[0] = dan_version3[position[0]].toLowerCase(); 
     } 
     if (pos_categ[0].equals(lessons_titles4[0])){ 
      title[0] = lessons_titles4[position[0]]; 
      eng[0] = eng_version4[position[0]]; 
      dan[0] = dan_version4[position[0]].toLowerCase(); 
     } 
     if (pos_categ[0].equals(lessons_titles5[0])){ 
      title[0] = lessons_titles5[position[0]]; 
      eng[0] = eng_version5[position[0]]; 
      dan[0] = dan_version5[position[0]].toLowerCase(); 
     } 
     if (pos_categ[0].equals(lessons_titles6[0])){ 
      title[0] = lessons_titles6[position[0]]; 
      eng[0] = eng_version6[position[0]]; 
      dan[0] = dan_version6[position[0]].toLowerCase(); 
     } 

     title_view.setText(title[0]); 
     eng_view.setText(eng[0]); 
     dan_view.setText(dan[0]);