2016-11-16 68 views
0

請參見下面的代碼判斷點:什麼是藍牙是否開啓兩次

if (!mBluetoothAdapter.isEnabled()) { 
     if (!mBluetoothAdapter.isEnabled()) { 
      Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); 
      startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT); 
     } 
    } 

爲什麼?這在MCU編程中實際上很常見,但這是我們正在談論的Java應用程序爲什麼?沒有任何意義。

+0

嗯..看起來更像是一個副本粘貼效果;) – aksonlyaks

回答

1

我同意;我看不出有什麼理由爲什麼這樣的這種雙重檢查會有什麼合理的效果。

看起來像不好的做法,每個人都只是複製它沒有進一步的思考(也許也許會有一些有道理的,如果第二次檢查會去的new Intent行之後調用startActivity之前......但正如上面,沒有除了混淆讀者的影響

由於這個代碼只是運行相同的檢查兩次;而在中間,可能對「被檢查的事」副作用的任何步驟