2011-11-22 4 views
0
이 코드의 문제는 경우 문의 '다른'부분이 실행되는 것 같다

이 경우에도 변수 일치 (그래서 사실 인 경우에도, 실행되는 '만약'이 사실이라면). 조언 좀 해줄 래?그렇지 않은 부분은 string.equals은 (otherstring)

감사합니다. 내가 실행할 때

public void CheckInstalledDBVersion() throws NullPointerException, IOException { 

    try { 

        //TRY TO OPEN DATABASE AND READ VERSION 
        //WRITE VERSION TO InstalledDBversion 

    } catch(RuntimeException e) { 

        //IF TABLE COULD NOT BE QUERIED 
        //SET InstalledDBversion to Bogus value 

     InstalledDBversion = "00"; 
     Log.d("RTE", ".. but we've catched it!"); 

    } finally { 
     if (InstalledDBversion.equals(PackedDBversion)){ 

      // Installed DBVersion == Packed DBVersion .. nothing happens 

     } 
     else 

       showDialog(DBCHECKFAILDIALOG); 
      initialiseDatabase = false; 
      copyDB(); 
     } 
    } 


그래서, copyDB();은 짝수 라인이 다른 블록에 포함되어 무엇

+0

InstalledDBversion.equals (PackedDBversion)가 사용자가 생각하는 것을 반환하지 않습니다. 이 값이 실제로 무엇인지 파악하려면이 줄에 중단 점을 놓고이 값이 무엇인지 파악할 수있는 지역 주민을 확인하십시오. 그것은 bool입니까? 그렇다면 어떤 가치가 있습니까? 그것이 당신이 기대하고있는 것을 되돌려주지 않으면 당신의 논리는 어딘가에 있습니다 .. – BigBug

+0

if (condition) part에있는 모든 단어의 철자를 확인 했습니까 ?? – Stuti

+0

자바라고 생각합니다. – ds27680

답변

1
else 
    showDialog(DBCHECKFAILDIALOG); 

initialiseDatabase = false; 
copyDB(); 

들여 쓰기가 고정되어 있습니다. copyDBif/then/else 블록 외부에 있습니다. 코드 서식이있는 IDE를 사용하십시오.

+0

아! 나는 보았다. 나는 {}을 놓치고있다. .. 어리석은, 멍청한 .. * ooof * –

0

InstalledDBversion.equals(PackedDBversion) == true 경우 호출되는? showDialog(DBCHECKFAILDIALOG) 만 포함됩니다. else 블록에 {} 세트가 누락 되었습니까?

+0

아! 나는보고 .. 나는 {}을 (를) 놓치고있다. 어리 석다, 멍청한 .. 우프 –

관련 문제