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.

Representando la memoria utilizando una tabla hash desde un archivo de texto.

Tengo un proyecto donde necesito crear un programa de gestión de memoria en Java y tengo el archivo de texto pero no sé por dónde empezar. Ya estoy familiarizado/a con el método split() en Java, pero básicamente quiero que el índice sea la clave y todo lo que venga después sea el valor.

Aquí está el archivo de texto porque es enorme: https://pastebin.com/Q4whQHxW

Código:


String[] temp; temp = data.split("\n"); //supongamos que data es el string que contiene el texto del documento String[][] temp2 = new String[temp.length][]; for(int i = 0; i < temp.length; i++) { temp2[i] = temp[i].split(" "); } for(int i = 0; i < temp2.length; i++) { for(int j = 1; j < temp2[i].length; j++) memoryPhysical.put(Integer.parseInt(temp2[i][0]),temp2[i][j]); } System.out.println(memoryPhysical);
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para crear un programa de gestión de memoria en Java utilizando el archivo de texto proporcionado, se puede utilizar el método split() para dividir los datos por caracteres de salto de línea (\n). Luego, se puede dividir cada línea por espacios para separar el índice y los valores.

    Cree una matriz bidimensional para almacenar los datos divididos, donde la primera dimensión representa cada línea en el archivo de texto y la segunda dimensión representa el índice y los valores en esa línea.

    Luego, utilice un bucle para recorrer la matriz bidimensional y rellenar un HashMap con el índice como clave y los valores como el valor correspondiente.

    Aquí hay un código de ejemplo para lograr esto:


    String[] temp; temp = data.split("\n"); // asumimos que data es una cadena que contiene el texto String[][] temp2 = new String[temp.length][]; // Dividir cada línea por espacios para separar el índice y los valores for (int i = 0; i < temp.length; i++) { temp2[i] = temp[i].split(" "); } // Rellenar un HashMap con el índice como clave y los valores como valor HashMap<integer, string=""> memoryPhysical = new HashMap<>(); for (int i = 0; i < temp2.length; i++) { for (int j = 1; j < temp2[i].length; j++) { memoryPhysical.put(Integer.parseInt(temp2[i][0]), temp2[i][j]); } } // Imprimir el HashMap rellenado System.out.println(memoryPhysical);

    En este código, asumimos que data es una variable de tipo cadena que contiene el contenido del archivo de texto. El HashMap resultante llamado memoryPhysical tendrá el índice como clave (convertido a un Integer) y los valores como el valor de cadena correspondiente.</integer,>

Comments are closed.