es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo reposicionar o reordenar las claves en un objeto JSON o un mapa de hash en Java.

{
data:{},
firstNane:"",
id:"1,
lastName:"",
  children:[
    parent:"1",
    id:"11",
    name:"",
    firstName:"",
    lastName:"",
    chidlren:[..other nested children],
    data:{},
  ],
name:"",
}

Above is my JSON object, I want to reposition the keys into the following format
id,name,firstName,lastName,data and children

Could some one let me know how can I do the reposition the keys as mentioned above so my final output would be display as follows ::-

This is the JSON object also let me know how it would be possible for the hash map to order the elements.

{
    id:"1,
    name:"",
    firstNane:"",
    lastName:"",
    data:{},
      children:[
        id:"11",
        name:"",
        firstName:"",
        lastName:"",
        parent:"1",
        data:{},
        chidlren:[..other nested children],
      ],

}

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para reposicionar las claves en el objeto JSON, puedes crear un nuevo objeto con el orden de clave deseado utilizando una combinación de desestructuración de objetos y propagación de objetos.

    const originalObj = {
      data: {},
      firstNane: "",
      id: "1",
      lastName: "",
      children: [
        {
          parent: "1",
          id: "11",
          name: "",
          firstName: "",
          lastName: "",
          children: [/*...other nested children*/],
          data: {},
        },
      ],
      name: "",
    };
    
    const newObj = {
      id: originalObj.id,
      name: originalObj.name,
      firstName: originalObj.firstName,
      lastName: originalObj.lastName,
      data: originalObj.data,
      children: originalObj.children.map(child => ({
        id: child.id,
        name: child.name,
        firstName: child.firstName,
        lastName: child.lastName,
        parent: child.parent,
        data: child.data,
        children: child.children,
      })),
    };
    

    Para ordenar los elementos en un hashmap, puedes usar un LinkedHashMap. Este tipo de hashmap mantiene el orden de inserción de sus elementos.

    import java.util.LinkedHashMap;
    
    LinkedHashMap<string, string=""> orderedMap = new LinkedHashMap<>();
    orderedMap.put("key1", "value1");
    orderedMap.put("key2", "value2");
    // ...
    

    En este ejemplo, se preservará el orden de inserción de los elementos en orderedMap.</string,>

Comments are closed.