Aus*_*tin 8 java arrays sorting
所以我不确定为什么这对我来说变得如此困难,但我需要从高到低,从低到高排序.
从高到低我有:
int a, b;
int temp;
int sortTheNumbers = len - 1;
for (a = 0; a < sortTheNumbers; ++a) {
for (b = 0; b < sortTheNumbers; ++b) {
if (array[b] < array[b + 1]) {
temp = array[b];
array[b] = array[b + 1];
array[b + 1] = temp;
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我不能为我的生活让它反向工作(从低到高),我已经考虑过逻辑,它总是为所有值返回0.任何帮助赞赏!
更大的图景是我有一个4列的JTable,每列都有数字,名称或日期的条目.我需要能够来回排序.
谢谢!
Ken*_*net 18
除非您认为使用已经可用的排序功能并且自动装箱作弊:
Integer[] arr =
{ 12, 67, 1, 34, 9, 78, 6, 31 };
Arrays.sort(arr, new Comparator<Integer>()
{
@Override
public int compare(Integer x, Integer y)
{
return x - y;
}
});
System.out.println("low to high:" + Arrays.toString(arr));
Run Code Online (Sandbox Code Playgroud)
打印 low to high:[1, 6, 9, 12, 31, 34, 67, 78]
如果你需要高后低的变化x-y
,以y-x
在比较