26. november 2004 - 10:57
Der er
5 kommentarer og
1 løsning
Kloning af et to dimensionelt array af char's
Hejsa.
Jeg sidder med en lidt tricky opgave, hvor jeg skal klone et to-dimensionelt array af chars. Jeg har kunnet læse mig til at dette ikke umiddelbart kan lade sig gøre, da java ikke har to-dimensionelle arrays som type, og man derfor er nødt til at benytte sig af noget deep-cloning agtigt noget.
Da jeg ikke er den store programmeringshaj, ville jeg lige høre om der var nogen der kunne skrive en metode der modtog et char[][] og returnerede et ligedant, bare i klonet udgave, samt hvordan man skal kalde den fra en metode!
Bedste hilsner
Mads
26. november 2004 - 11:00
#1
Jeg lavede engang det her lille eksempel:
public class TwoDimClone {
public static void main(String[] args) throws Exception {
int[] one = new int[]{5,5};
int[] oneClone = (int[])one.clone();
one[1]=0;
System.out.println(oneClone[1]);
int[][] two = new int[][]{{5,5,5},{5,5,5},{5,5,5}};
int[][] twoClone = (int[][])two.clone();
two[1][1] = 0;
System.out.println(twoClone[1][1]);
int[][] three = new int[][]{{5,5,5},{5,5,5},{5,5,5}};
int[][] threeClone = new int[three.length][];
for(int i = 0; i < threeClone.length; i++) {
threeClone[i] = (int[])three[i].clone();
}
three[1][1] = 0;
System.out.println(threeClone[1][1]);
}
}