Cómo agregar una matriz de cadenas en un objeto JSON?

Estoy intentando crear este objeto JSON en android. Estoy atascado en cómo agregar una matriz de cadena en el objeto.

A = { "class" : "4" , "name" : ["john", "mat", "jason", "matthew"] } 

Este es el código que he escrito:

 import org.json.JSONObject; JSONObject school = new JSONObject(); school.put("class","4"); school.put("name", ["john", "mat", "jason", "matthew"] ); 

Pero la última línea da un error. ¿Alguna forma de pasar esto?

Poco enfoque inadecuado sugerido por Tom. El código optimizado sería:

 ArrayList<String> list = new ArrayList<String>(); list.add("john"); list.add("mat"); list.add("jason"); list.add("matthew"); JSONObject school = new JSONObject(); school.put("class","4"); school.put("name", new JSONArray(list)); 

Estás recibiendo un error porque tu última línea no es válida para Java.

 school.put("name", new JSONArray("[\"john\", \"mat\", \"jason\", \"matthew\"]")); 

Usted está consiguiendo el error debido a esto.

 school.put("name", ["john", "mat", "jason", "matthew"] ); ^ ^ 

Hazlo así.

 school.put("name", new JSONArray("[\"john\", \"mat\", \"jason\", \"matthew\"]")); 

@ Bhavindesai, la respuesta es una gran respuesta. Aquí hay otra manera de resolver este problema. Simplemente puede hacerlo utilizando la biblioteca Json Simple. Aquí está el gradle

 compile 'com.googlecode.json-simple:json-simple:1.1' 

Aquí está el ejemplo de código:

 org.json.simple.JSONObject jsonObject=new org.json.simple.JSONObject(); jsonObject.put("Object","String Object"); ArrayList<String> list = new ArrayList<String>(); list.add("john"); list.add("mat"); list.add("jason"); list.add("matthew"); jsonObject.put("List",list); 

Eso es. 🙂

  • Cómo crear dinámicamente grupos y childs en listview expandible desde json en android?
  • Cómo crear objeto JSON utilizando cadena?
  • Cómo configurar gson para excluir 0 valores enteros
  • Credenciales de la cuenta de servicio de Firebase Permiso de lectura de Json leído
  • GSON deserializar la matriz de objetos personalizados
  • Cómo serializar objeto a JSON?
  • Cómo Caché los datos de Json para estar disponibles sin conexión?
  • Firebase "mientras se deserializaba, pero obtuvo una clase java.util.ArrayList"
  • Obtenga el objeto JSON uno por uno desde la matriz JSON en Android utilizando Retrofit y RxJava
  • Solicitud de excepción de Android en IOException al recuperar JSON de URL
  • Subida de imagen multiparte de Android con HttpConnectionParams obsoleta en nueva API
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.