工作原因,写了近一年时间的js了,感觉java生疏了很多,就写些简单的工具方法练练手。
1、数组排序
/**
* Arrays.sort默认是从小到大排序,如果要用该方法实现倒序排序,还需要实现Comparator接口或调用Collections.reverseOrder()方法。
* 但是,传入的数组不能是基本类型的数组,这就是写这个方法的原因
* @param a
* @param order {1|0} 1:顺序;0:倒序
*/
public int[]sort(int[] a, int order) {
int t;
for(int i = 0, len = a.length ; i < len - 1; i++) {
for(int j = 0 ; j < len - i - 1; j++) {
if(order < 1 ? a[j] < a[j+1] : a[j] > a[j+1] ) {
t= a[j];
a[j] = a[j+1] ;
a[j + 1] = t;
}
}
}
return a;
}
2、将int数组转换为Integer数组
如果传入参数是基本类型的数组,也想用Arrays.sort方法,我能想到的就是把数组的类型转换一下。那么下面就粘贴一下将int数组转换为Integer数组的一种方法:
int[] nums = {1,2,3};
IntStream stream = Arrays.stream(nums);
Stream<Integer> integerStream = stream.boxed();
Integer[] integers = integerStream.toArray(Integer[]::new);
至于Arrays.sort的倒序使用,下次记录吧。