I hava a problem to clone a two-dimensional array of float entries to another two-dimensional array of similar type and size. Below is my coding, anyone can help me to check which part I got wrong? Thanks.
public class Clone2Darray {
public static int[][] clone(int[][] a) throws Exception {
float b[][] = new int[a.length][a[0].length];
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[0].length; j++)
b[i][j] = a[i][j];
}
return b;
}
public static void main(String args[]) {
float a[][]= {{1.513,2.321,3.421},{4.213,5.432,6.123},{7.214,8.213,9.213}};
try {
float b[][] = Clone2Darray.clone(a);
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[0].length; j++) {
System.out.print(b[i][j] + " ");
}
System.out.println();
}
} catch (Exception e) {
System.out.println("Error!!!");
}
}
}
My coding come out these errors like below:
C:\Users\User-Win7\.netbeans\7.1\var\cache\executor-snippets\run.xml:48:
Cancelled by user.
BUILD FAILED (total time: 4 seconds)
I want the output like below:
1.513 2.321 3.421
4.213 5.432 6.123
7.214 8.213 9.213
1.513 2.321 3.421
4.213 5.432 6.123
7.214 8.213 9.213
1 - Change method parameter from int to float.
2 - change return type from int to float.
3 - while assign float value in array use f after every number to tell compiler that its a float number.
public static float[][] clone(float[][] a) throws Exception {
float b[][] = new float[a.length][a[0].length];
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[0].length; j++) {
b[i][j] = a[i][j];
}
}
return b;
}
float[][] a = new float[][] { { 1.513f, 2.321f, 3.421f }, { 4.213f, 5.432f, 6.123f },
{ 7.214f, 8.213f, 9.213f } };
try {
float b[][] = clone(a);
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[0].length; j++) {
System.out.print(b[i][j] + " ");
}
System.out.println();
}
} catch (Exception e) {
System.out.println("Error!!!");
}