Gson deserializa la matriz JSON con múltiples tipos de objetos

Tengo algunos JSON extraños como:

[
  {
    "type":"0",
    "value":"my string"
  },
  {
    "type":"1",
    "value":42
  },
  {
    "type":"2",
    "value": {
    }
  }
]

Basado en algún campo, el objeto en la matriz es de cierto tipo. Usando Gson, mi idea es tener un TypeAdapterFactory que envíe adaptadores delegados para esos tipos a un TypeAdapter, pero estoy colgado de entender una buena forma de leer ese campo de "tipo" para saber qué tipo crear. En el TypeAdapter,

Object read(JsonReader in) throws IOException {
  String type = in.nextString();
  switch (type) {
    // delegate to creating certain types.
  }
}

supondría que el campo "tipo" viene primero en mi JSON. ¿Hay alguna forma decente de eliminar esa suposición?

Respuesta 1

Estoy confundido con el polimorfismo y me pregunto si esto se considera polimorfismo. Siento que se ve un poco raro, pero aún se compila correctamente. Familia de clase pública {void FamilyInfo () {...

Estoy tratando de poner bootstrap.properties desde fuera de mi jar, para que otros desarrolladores no lo anulen por error. ¿Podría por favor aconsejar aquí? Este es su contenido: dirigir a la primavera ...

Tengo una ArrayList (String) que contiene una lista de fechas formateadas como esta: elemento 1: "2012-5-1" elemento 2: "2012-8-10" elemento 3: "2012-12-5" elemento 4: "2013-12-21" elemento 5: "2013-12-13" ...

Estoy tratando de sincronizar mis métodos de clase Person para que mi variable de contador estático se reduzca en un hilo a la vez. Persona de clase pública extiende Thread {private static int count = ...