После определения того, что элементы в определенном столбце многомерного массива не являются числами, я рассматриваю замену двух столбцов этого многомерного массива.Обмен столбцами многомерных массивов
В основном я хотел бы поменять содержимое столбца 4 на столбцы 6 после определения того, являются ли элементы в столбце 6 числами или нет, если элементы в столбце 6 не являются числами, а затем создают новый массив и начинают вставлять содержимое старого массива в новом массиве, но как только столбец попадает в 4-й столбец старого массива, он помещает этот элемент в 6-й столбец нового массива и наоборот.
Ниже приведена моя попытка относительно вышеуказанного. Мне удалось успешно определить, являются ли элементы в моем столбце 6 числами или нет. Теперь у меня есть сомнения относительно логику замены элементов в колонке 4 с теми, в 6
//!<
public String[][] sortedByDateUsageStatsData(String[][] unsortedUsageStatsData) {
System.out.println("\nbtnUsageStats - sortedByDateUsageStatsData(String[][] unsortedUsageStatsData)");
for (int row = 0; row < unsortedUsageStatsData.length; row++) {
for (int col = 0; col < 7; col++) {
//System.out.println("unsortedUsageStatsData[" + row + "][" + col + "] => " + unsortedUsageStatsData[row][col]);
}
// Check if content in return code column i.e. column 6 is number or a string.
// If a string then swap column 4 content with column 6 and pass this array with swapped columns as the final array
if(!isNumericString(unsortedUsageStatsData[0][6])) {
//System.out.println("unsortedUsageStatsData[0][6] is NOT a number i.e. " + unsortedUsageStatsData[0][6]);
break;
}
System.out.println("\n");
}
System.out.println("\nExited for loop as unsortedUsageStatsData[0][6] is NOT a number\n");
sortedUsageStatsData = new String[unsortedUsageStatsData.length][7];
for (int row = 0; row < unsortedUsageStatsData.length; row++) {
for (int col = 0; col < 7; col++) {
//System.out.println("\nBefore swap unsortedUsageStatsData[" + row + "][" + col + "] => " + unsortedUsageStatsData[row][col]);
sortedUsageStatsData[row][col] = unsortedUsageStatsData[row][col];
if(col == 4) {
System.out.println("\nBefore swap sortedUsageStatsData[" + row + "][6] => " + unsortedUsageStatsData[row][6]);
sortedUsageStatsData[row][6] = unsortedUsageStatsData[row][4];
System.out.println("\nAfter swap sortedUsageStatsData[" + row + "][6] => " + unsortedUsageStatsData[row][6]);
sortedUsageStatsData[row][4] = unsortedUsageStatsData[row][6];
System.out.println("\nAfter swap sortedUsageStatsData[" + row + "][4] => " + unsortedUsageStatsData[row][4]);
}
System.out.println("\nAfter swap sortedUsageStatsData[" + row + "][" + col + "] => " + unsortedUsageStatsData[row][col]);
}
System.out.println("\n");
}
return sortedUsageStatsData;
}
Любая помощь приветствуется.
Это звучит как шлам данных попрошайничества для некоторой структуры. – chrylis