React-Native:WritableMap的逻辑比较

时间:2016-07-11 09:42:31

标签: java react-native react-native-android

我尝试比较异步函数的结果如下:

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"));

上面的代码给出了以下控制台输出:

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")值为OK字符串,但当我将其作为res.getString("status") == "OK"进行比较时,它会返回false。实际上我在results.putString("status", "OK");函数中使用了ServerAuthenticate.signIn()的方法。

我想知道是否有办法比较WritableMap的属性值?

1 个答案:

答案 0 :(得分:1)

这是标准的Java String equals问题。请尝试res.getString("status").equals("OK")或更好地确保无效安全"OK".equals(res.getString("status"))

另见Java String.equals versus ==