有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如果json数组中的下一个值相同,则首先删除它并在安卓 studio(java)中运行进一步的代码

我从Mysql接收到json数组,我在其中添加了汽车问题及其解决方案,因此一个问题的解决方案不止一个,这就是为什么problems列有许多重复值的原因。 现在,当我得到值时,它会检查数组中的下一个问题是否与第一个问题相同,然后移除该问题,并显示与前一个不同的下一个问题。 这是我的代码:在这里我收到了json数组:

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,
                    Constants.URL_ISSUE + selectedModel + Constants.URL_ISSUE_ISSUENAME + selectedIssue,
                    null,
                    new Response.Listener<JSONObject>() {
                        @Override
                        public void onResponse(JSONObject response) {
                            try {
                                JSONArray jsonArray = response.getJSONArray("masterIssue");
                                for (int i = 0; i < jsonArray.length(); i++) {
                                    JSONObject jsonObject = jsonArray.getJSONObject(i);

                                    String IssueName = jsonObject.optString("ISSUENAME");

                                    issueList.add(IssueName);

                                    
                                    issue_text.setText(IssueName);

                                    yes_btn.setVisibility(View.VISIBLE);
                                    no_btn.setVisibility(View.VISIBLE);

                                    yes_btn.setOnClickListener(Dashboard.this);
                                    no_btn.setOnClickListener(Dashboard.this);

                                }
                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                        }
                    }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                }
            });
            requestQueue.add(jsonObjectRequest);

下面是我更改的代码,并获取数组中的下一个元素:

private void moreIssuesFunction() 
        if (issueList.size() == 0) {
            issue_text.setText("Connect mechanic");
            enabledFunction();
        } else {
            issueList.remove(issueList.size() - 1);
            if (issueList.size() > 0) {

                String res = issueList.get(issueList.size() - 1);

                issueList.remove(issueList.size() - 1);

                issue_text.setText(res);

            } else {
                issue_text.setText("you can connect with mechanic");
                enabledFunction();
            }
        }
    }

共 (0) 个答案