Se gli array non sono contenuti in una struttura dinamica, ma sono "sciolti", dovrai per forza agire staticamente sul codice per ottenere la dimensione dei vari array e per effettuare la concatenazione:
Se, al contrario, gli array sono contenuti in una struttura dati (tipo un ArrayList di array di byte), allora risulta più semplice:codice:byte[] risultato = new byte[a1.length + a2.length + a3.length + ... + an.length]; int pos = 0; for(int i=0; i<a1.length; i++) risultato[pos++] = a1[i]; for(int i=0; i<a2.length; i++) risultato[pos++] = a2[i]; for(int i=0; i<a3.length; i++) risultato[pos++] = a3[i]; ... for(int i=0; i<an.length; i++) risultato[pos++] = an[i]; // risultato sarà un array contenente la concatenazione di tutti gli altri
Ciao.codice:ArrayList<byte[]> struttura = new ArrayList<byte[]>(); ... int dimTot = 0; for(byte[] arr : struttura) dimTot += arr.length; byte[] risultato = new byte[ dimTot ]; int pos = 0; for(byte[] arr : struttura) { for(int i=0; i<arr.length; i++) risultato[pos++] = arr[i]; } // risultato sarà un array contenente la concatenazione di tutti gli altri![]()



Rispondi quotando