2011-10-17 9 views
0

私は本当にこの1つに困惑しています:実行がスキップする行

コード実行は07行目から10行目にジャンプしますか?行08をスキップし、if文を "落ちる" ???

01 public String getContainerNameFromUID(Activity aActivity, Long aUID, String aDefault){ 
02  if(aUID != null){ 
03   Cursor containerCursor; 
04   containerCursor = fetchContainer(aUID); 
05   aActivity.startManagingCursor(containerCursor); 
06   int i = containerCursor.getColumnIndexOrThrow(KEY_NAME); 
07   String test =containerCursor.getString(i); 
08   return test; 
09  }else{ 
10   return "Null"; 
11  } 
12 } 
+1

デバッガで実行が「ジャンプ」していますか?これはしばしば、デバッグに問題があることを意味します。たとえば、コンパイルされたJavaはソースと同じバージョンではないため、行番号は並んでいません。 –

答えて

1

あなたのコンパイラはおそらく、冗長なローカルスコープの割り当てを避けるためにコードを最適化しています。

+0

ありがとうございました。 eclipseでコードを実行すると、コードの実行が最後のreturn文にスキップされるように見えますが、これは幻想です。私はそれがコンパイラの最適化のためだと思います。コードは正常に動作しています。 **テスト**は返されていますが、 "Null"は返されません。 – user999727

関連する問題