试图寻找其他一些相关的例子,但找不到任何解决问题的方法。我有一个2D阵列。我需要按照数字顺序放置这些,但同时将myArray [x] [0]中的值更改为它出现在
中的行String[][] myArray = {
{"1", "john", "smith", "12345"},
{null, null, null, null},
{"3", "sam", "smith", "54321"},
{"5", "paul", "long", "15243"},
{"4", "simon", "short", "51423"}
};
应该成为
{"1", "john", "smith", "12345"},
{"2", "sam", "smith", "54321"},
{"3", "simon", "short", "51423"}
{"4", "paul", "long", "15243"},
{null, null, null, null}
我尝试过使用compareTo()但是在获取一些错误时使用null值。任何帮助将不胜感激
答案 0 :(得分:0)
使用boolean ==。
检查它是否为nullif(myArray[x][y] == null)
{
//Move to end...
}
答案 1 :(得分:0)
我看到这个的方式,你可以通过两次通过来解决它。
首先,您需要执行更自定义的排序,以检查空值。
您是否尝试过使用Arrays.sort
方法?其中一个重载变体允许使用自定义Comparator
。
您可以实现一个Comperator来执行复杂的排序逻辑,并检查null
值。
其次,您需要遍历已排序的数组并修改每行中的第一个值。
int index = 1;
for (String[] row : myArray) {
if (row[0] != null) {
row[0] = String.valueOf(index);
}
index++;
}