for (int i = 0; i < jsonArray.length(); i++) {
JSONObject Jasonobject = jsonArray.getJSONObject(i);
mcategory_id=Jasonobject.getString("category_id");
vaccinationData.setmCategory_id(mcategory_id);
items.add(vaccinationData);
}
for (int j = 0; j < jsonArray.length(); j++) {
CategoryModelClass vaccinationData1=new
CategoryModelClass();
JSONObject jsonObject1 = jsonArray1.getJSONObject(j);
scategory_id=jsonObject1.getString("category_id");
vaccinationData1.setmCategory_id(scategory_id);
items.add(vaccinationData);
}
Ich muss den Wert von mcategory_id und scategory_id aus 2 verschiedenen Array-Listen vergleichen. Wie kann ich diese 2 Werte vergleichen? Welche Logik soll ich dafür verwenden?
Wenn Ihnen die Reihenfolge wichtig ist, können Sie die "gleich"-Methode der Liste verwenden.
List mcategoryIdList = new ArrayList();
List scategoryIdList = new ArrayList();
for (int i = 0; i < jsonArray.length(); i++) {
//retrieve json objects
JSONObject Jasonobject = jsonArray.getJSONObject(i);
JSONObject jsonObject1 = jsonArray1.getJSONObject(i);
//add to lists
mcategoryIdList.add(Jasonobject.getString("category_id"));
scategoryIdList.add(jsonObject1.getString("category_id"))
}
//now you can compare both
if(mcategoryIdList.equals(scategoryIdList)){
//they're equal
}else{
//they're not equal
}
Wenn Ihnen die Reihenfolge egal ist, verwenden Sie Sets:
Set mcategoryIdSet = new HashSet();
Set scategoryIdSet = new HashSet();
for (int i = 0; i < jsonArray.length(); i++) {
//retrieve json objects
JSONObject Jasonobject = jsonArray.getJSONObject(i);
JSONObject jsonObject1 = jsonArray1.getJSONObject(i);
//add to sets
mcategoryIdSet.add(Jasonobject.getString("category_id"));
scategoryIdSet.add(jsonObject1.getString("category_id"))
}
//now you can compare both
if(mcategoryIdSet.equals(scategoryIdSet)){
//they're equal
}else{
//they're not equal
}
Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.
Bei Verstößen wenden Sie sich bitte [email protected] Löschen.
Lass mich ein paar Worte sagen