2016-07-11 7 views
0

の論理比較:反応させ、ネイティブ:私は以下のように非同期関数の結果を比較してみWritableMap

D/!NativeModules(5899): --> res.getString(status).length(): 2 
D/!NativeModules(5899): --> res.getString(status): OK 
D/!NativeModules(5899): --> res.getString('status') == 'OK': false 

res.getString("status")値:

WritableMap res; 
res = ServerAuthenticate.signIn(userName, userPass); 

Log.d(TAG, " --> res.getString(status).length(): " + res.getString("status").length()); 
Log.d(TAG, " --> res.getString(status): " + res.getString("status")); 
Log.d(TAG, " --> res.getString('status') == 'OK': " + (res.getString("status") == "OK")); 

を上記のコードは、次のコンソール出力を与えますOK文字列ですが、res.getString("status") == "OK"と比較するとfalseが返されます。実際にはServerAuthenticate.signIn()の機能でresults.putString("status", "OK");の方法を使用しています。

WritableMapのプロパティ値を比較する方法はありますか?

答えて

1

これは標準Java文字列の問題です。 res.getString("status").equals("OK")を試してください。またはヌル安全性を高めるために"OK".equals(res.getString("status"))を入力してください。

も参照してください。Java String.equals versus ==

+0

ありがとうございました!それは動作します!わーい!! – efkan

関連する問題