¿Utiliza Java, que es la mejor manera de combinar dos matrices de clase según algún valor de la clase?La mejor manera de combinar dos matrices de clases según el valor de variable de clase
ejemplo, tenemos estas dos clases:
public class C1{
public String id="";
public String value="";
public String tot="";
}
public Class C2{
public String id="";
public String tot="";
}
Y en algún punto de nuestro código tenemos dos matrices como:
//id -value - tot
C1 a [] = { {"1","value#1",""},
{"2","value#2",""},
{"3","value#3",""},
{"4","value#4",""}
};
//id - tot
C2 b [] = { {"1","2"},
{"2","11"},
{"4","15"}
};
La matriz final debe ser similar:
C1 f [] = { {"1","value#1","2"},
{"2","value#2","11"},
{"3","value#3",""},
{"4","value#4","15"}
};
Estoy tratando de encontrar la mejor manera de lograr este resultado sin leer una u otra matriz desde el inicio hasta fin, porque aquí las dos matrices tienen pocas filas, pero en realidad ambas pueden tener una longitud de 100k + ...
Ordene las matrices con la tecla. Vaya a través de las matrices aumentando la clave, comparando para ver si coinciden, y si lo hacen, utilice la reflexión para copiar todos los atributos de C2 a C1. – bdares
El comentario anterior es una buena solución, pero creo que el reflejo es excesivo a menos que por alguna razón no sepa qué campos deben copiarse en tiempo de compilación. –