java - android 夹板字符串

标签 java android arrays if-statement split

我有一个服务器女巫向我发送一个字符串,例如“False~False~False~True~False~True~False~”或类似的东西,所以我所做的是对该字符串进行拆分到“~” 所以我的代码是 String[] AString = A2MCString.split("~"); 我有一个新的字符串数组 我去检查每个部分是否正确或false 使用 if else 语句

if (AString[0] == "True") {
Log.d("ClientActivity","Light ON");
On1.setBackgroundResource(R.drawable.selected_on);
}
else Log.d("ClientActivity","Light OFF");

然而,即使服务器在我的字符串数组的第一部分中向我发送 true,该数组仍然反弹到 else 说它是 false,即使它是 true?对我的问题有任何帮助谢谢!

最佳答案

在 java 中比较字符串时,必须使用 equals 方法。在你的情况下是这样的

if (AString[0].equals("True")) {
    Log.d("ClientActivity","Light ON");
    On1.setBackgroundResource(R.drawable.selected_on);
}
else Log.d("ClientActivity","Light OFF");

当在对象上使用 == 运算符时(在 java 中,字符串是一个对象),它正在比较两个对象引用是否指向同一个对象。

关于java - android 夹板字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10473682/

相关文章:

android - "Failed to install the following Android SDK packages as some licences have not been accepted"错误

python - 将元组列表整形为 numpy 中的 MxN 维 ndarray

java - 为什么在关闭手机时进入 OnCreate()?

java - mpjboot bash : java: command not found

android - 如何重用 Activity 代码?

android - android xml中app命名空间的用途是什么

php - 如何组合数组行并使其可变

c++ - 返回枚举数组的函数

java - 如何向 "/users?<some-query-here>"发出 GET 请求,然后在 JSON 数组中返回所有满足查询条件的用户

java - 建立与数据库的连接是什么意思? DriverManager.getConnection 的作用是什么?