使用方法://类名+方法名()
import java.util.Arrays;
public class Test_ArraysTools1_2 {
public static void main(String[] args) {
int[] arr={4,3,1,6,5};//类名+方法名()
OneArryasTools2.print(arr);
OneArryasTools2.getMax(arr);
OneArryasTools2.getMin(arr);
OneArryasTools2.asc(arr);
OneArryasTools2.desc(arr);
OneArryasTools2.revArray(arr);
}
}
------------------------------------------------下面才是工具的代码-----OneArryasTools.java--------------
/**
* 这是一个一维数组的工具类,里面封装了6个方法,分别是
* 1.数组的遍历: print方法
* 2.获取最大值: getMax方法
* 3.获取最小值: getMin方法
* 4.反转数组:revArray方法
* 5.数组升序(从小到大排列):asc
* 6.数组降序(从大到小排列):desc
*
* 备注:显示的同时带数组返回,加个接收类型就可以了。
*
* @author Eto
* @version v1.1
*
*
*/
import java.util.Arrays;
public class OneArryasTools {
// 如果一个类中所有的方法都是静态的 需要在多做一件事 就是私有化构造函数
// 目的是不让其他类出行间本类对象
private OneArryasTools() {}
/**
* 1.数组的遍历的方法: print方法
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回数组中最大值
* 案例: int arr1[] = print(arr); System.out.println("遍历获取:"+ Arrays.toString(arr1));
*/
public static int[] print(int[] arr) {
for (int i = 0; i < arr.length; i++) {
}System.out.println("遍历获取:" +Arrays.toString(arr));
return arr;
}
/**
* 2.获取最大值的方法: getMax方法
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回数组中最大值
* 案例: int max = getMax(arr); System.out.println("最max值:" + max);
*/
public static int getMax(int[] arr) {
int max = arr[0];// 记录第一个元素
for (int i = 0; i < arr.length; i++) {// 从第二个元素开始遍历
if (max < arr[i]) {// max 与数组中的其他元素进行比较
max = arr[i];// 记录住较大的
}
}System.out.println("最max值:"+max);
return max;// 返回值最大值
}
/**
* 3.获取最小值的方法: getMix方法
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回数组中最小值
* 案例: int min = getMin(arr); System.out.println("最min值:" + min);
*/
public static int getMin(int[] arr) {
int min = arr[0];
for (int i = 0; i < arr.length; i++) {
// 元素判断是否小于第三方变量
if (arr[i] < min) {
min = arr[i];
}
}System.out.println("最min值:"+min);
return min;
}
/**
* 4.反转数组的方法:revArray方法
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回的是一个数组 案例: int[] arr4 = revArray(arr); System.out.println("反转数组:" + Arrays.toString(arr4));
*/
public static int[] revArray(int[] arr) {
for (int i = 0; i < arr.length / 2; i++) {
int tmp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = tmp;
}System.out.println("反转数组:" +Arrays.toString(arr));
return arr;
}
/**
* 5.数组升序(从小到大排列):asc
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回的是一个数组
* 案例: int[] arr4 = asc(arr); System.out.println("升序数组:" + Arrays.toString(arr4));
*/
public static int[] asc(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = i + 1; j < arr.length; j++) {
// 1+1;2+1;3+1【原i是0的,经过i++后,此时i是1了】
if (arr[i] > arr[j]) {// 比数组的大小,[0]和[1]比;[0]和[2]...
int tmp = arr[i];// 把[0]存到tmp
arr[i] = arr[j];// 把[1]存到[0]
arr[j] = tmp;// 把tmp的[0]存到[1]
}
}
}System.out.println("升序数组:" +Arrays.toString(arr));
return arr;
}
/**
* 6.数组降序(从大到小排列):desc
*
* @version v1.1
* @param arr 接收一个int类型数组
* @return 返回的是一个数组
* 案例: int[] arr4 = desc(arr); System.out.println("降序数组:" + Arrays.toString(arr4));
*/
public static int[] desc(int[] arr) {
for (int i = 0; i < arr.length - 1; i++) {// 这里要-1,才会调换到0角标
for (int j = i + 1; j < arr.length; j++) {
if (arr[i] < arr[j]) {// 比数组的大小,[0]和[1]比;[0]和[2]...
int tmp = arr[i];// 把[0]角标赋给tmp
arr[i] = arr[j];// 角标[1]和角标[0]交换
arr[j] = tmp;// 把tmp的[0]角标拿回给[1]
}
}
}System.out.println("降序数组:" +Arrays.toString(arr));
return arr;
}
}