如果json数组中的下一个值与第一个值相同,请先删除它,然后在android studio(java)中运行进一步的代码

toiithl6  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(172)

我从mysql收到了json数组,在这里我添加了car问题及其解决方案,所以一个问题的解决方案不止一个,这就是为什么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();
            }
        }
    }

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题