我有以下数组:
Point[][] points;
它使用其他包含空值的数组进行初始化。我想要的是删除空单元格,因此新数组将不包含任何空值。
例如:
Other Array: P, P, P
P, P, P
N, P, N
N, P, N
New Array: P, P, P
P, P, P
P,
P,
我怎样才能实现它?
更新:
这是一个好方法吗?
Point[][] temp = cv.getPtStroke();
int i = 0;
int j = 0;
for (; i < temp.length && temp[i]!= null; i++) {}
Point[][] temp1 = new Point[i][];
i = 0;
for (; i < temp.length && temp[i]!= null; i++)
{
for (; j < temp[i].length && temp[i][j]!= null; j++){}
temp1[i] = new Point[j];
}
更新:问题已解决:
Point[][] temp = cv.getPtStroke();
int i = 0;
for (; i < temp.length && temp[i]!= null; i++) {}
Point[][] temp1 = new Point[i][];
i = 0;
for (; i < temp.length && temp[i]!= null; i++)
{
int j = 0;
for (; j < temp[i].length && temp[i][j]!= null; j++){}
temp1[i] = new Point[j];
}
int k = 0;
int temp1XSize = temp1.length;
int temp1YSize = 0;
for (; k < temp1XSize; k++)
{
temp1YSize = temp1[k].length;
int l = 0;
for (; l < temp1YSize; l++){
temp1[k][l] = temp[k][l];
}
}
你知道更好的方法吗?