我得到了一维数组,该数组已打印为3x3矩阵,我正在尝试创建一个排除第二列的新数组:
123
456
789
public void remCol(int clnum)
{
}
答案 0 :(得分:0)
我已经实施了一个解决方案。我的解决方案是动态的,因此数组中每个元素的长度可以不同。这是代码。
public class Main {
static int[] array = new int[] { 123, 4565, 78910 };
public static void main(String[] arg) {
int clNum = 0;
remCol(clNum);
System.out.print("Input : " + clNum + " | Output : [");
for (int j : array) {
System.out.print(j + " , ");
}
System.out.print("]");
}
public static void remCol(int clNum) {
// checking if clNum is valid
if (clNum <= 0) {
return;
}
clNum--; // decrement clNum by 1 since array index starts at 0
for (int i = 0; i < array.length; i++) {
String value = String.valueOf(array[i]); // convert int to String for easy manipulation
// checking if value is not null and not empty
// checking if value has the column index of clNum
if (value != null && !value.isEmpty() && clNum < value.length()) {
value = value.substring(0, clNum) + value.substring(clNum + 1, value.length()); // remove the column
array[i] = Integer.parseInt(value); // convert the String to int
}
}
}
}
以下是输出和结果:
Input : 0 | Output : [123 , 4565 , 78910]
Input : 1 | Output : [23 , 565 , 8910]
Input : 2 | Output : [13 , 465 , 7910]
Input : 3 | Output : [12 , 455 , 7810]
Input : 4 | Output : [123 , 456 , 7890]
Input : 5 | Output : [123 , 4565 , 7891]
Input : 6 | Output : [123 , 4565 , 78910]