Maison  >  Article  >  Java  >  Comment extraire efficacement les noms d'acteurs d'un tableau JSON imbriqué sous Android ?

Comment extraire efficacement les noms d'acteurs d'un tableau JSON imbriqué sous Android ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-22 14:15:15277parcourir

How to Efficiently Extract Actor Names from a Nested JSON Array in Android?

Analyse des JSONArrays dans Android

L'analyse des données JSON, en particulier des tableaux au sein d'objets JSON, peut présenter des défis, surtout au début. Prenons cet exemple :

{
    "abridged_cast": [
        {
            "name": "Jeff Bridges",
            "id": "162655890",
            "characters": [
                "Jack Prescott"
            ]
        },
        // ...
    ]
}

Objectif : Extraire les noms de tous les acteurs dans le tableau "abridged_cast".

Piège du code original :

Le code suivant récupère le tableau "characters" au lieu du "name" propriété :

JSONObject jsonResponse = new JSONObject(JSON);
JSONArray movies = jsonResponse.getJSONArray("characters");

Approche correcte :

Pour accéder à la propriété "name", vous devez parcourir le tableau "abridged_cast" et extraire le "name" valeur de chaque acteur :

List<String> allNames = new ArrayList<>();

JSONArray cast = jsonResponse.getJSONArray("abridged_cast");
for (int i = 0; i < cast.length(); i++) {
    JSONObject actor = cast.getJSONObject(i);
    String name = actor.getString("name");
    allNames.add(name);
}

Attendue Résultat :

[Jeff Bridges, Charles Grodin, Jessica Lange, John Randolph, Rene Auberjonois]

N'oubliez pas que lors de l'analyse de JSONArrays, il est crucial de comprendre la structure des données et de parcourir le tableau pour récupérer les détails spécifiques dont vous avez besoin.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn