Android 如果条件不起作用
我试图获取json数组中实体的值。我使用objectAndroid 如果条件不起作用,android,json,Android,Json,我试图获取json数组中实体的值。我使用object子菜单object获取并存储json响应数据。在我使用的代码中 Log.i("MealDealCatCode ", subMenuObject.getString("MealDealCatCode")); 它在我的logcat中打印L3 我的问题是我使用了if条件作为 if ((subMenuObject.getString("MealDealCatCode")).equals("L3")) { 当我调试并尝试进入条件时,如果它没有进入。它
子菜单object
获取并存储json响应数据。在我使用的代码中
Log.i("MealDealCatCode ", subMenuObject.getString("MealDealCatCode"));
它在我的logcat中打印L3
我的问题是我使用了if
条件作为
if ((subMenuObject.getString("MealDealCatCode")).equals("L3")) {
当我调试并尝试进入条件时,如果它没有进入。它检查并跳过if条件。我的if状况有什么问题。我们将非常感谢您的帮助
用于访问值的代码
for (int i = 0; i < responseJson.length(); ++i) {
JSONObject object = responseJson.getJSONObject(i);
JSONArray subMenuArray = object.getJSONArray("MealDealItemEntity");
for (int j = 0; j < subMenuArray.length(); ++j) {
JSONObject subMenuObject = subMenuArray.getJSONObject(j);
Log.i("MealDealCatCode ", subMenuObject.getString("MealDealCatCode"));
if ((subMenuObject.getString("MealDealCatCode")).equals("L3")) {
Log.i("MainMenuDescription", subMenuObject.getString("MainMenuDescription"));
}
}
}
看起来您需要添加一个.trim()
,因为它包含空格
请尝试以下方法:
if (subMenuObject.getString("MealDealCatCode").trim().equals("L3")) {
trim()
函数删除了空格。谢谢你的工作,但我认为马拉雷斯首先给出了答案。所以我想我得投他的票你的答案很完整。我看到了时差。我投票赞成第一个正确答案。我是这个系统的新手,我可以投票给两个答案吗?不,你不能。只有一个被接受的答案。你来判断哪一个是最好的。我投你的票,因为你的答案是完整和正确的。哦,不要担心谁先回答。只要善待未来的读者(这就是你所做的),记住你也可以投票(这就是我对golem的答案所做的),这样将来有人会看到这个问题,并会有一个提示,说明什么样的回答才是最好的开始
if (subMenuObject.getString("MealDealCatCode").trim().equals("L3")) {