Java_int、double型数组常用操作工具类(分享)
程序员文章站
2024-02-18 13:22:46
学了数组之后,感觉有好多操作需要经常去写,很不方便,因此自己做了一个工具类,方便调用,方法可能不全,希望大家可以添加,让我使用也方便一点儿。
public cla...
学了数组之后,感觉有好多操作需要经常去写,很不方便,因此自己做了一个工具类,方便调用,方法可能不全,希望大家可以添加,让我使用也方便一点儿。
public class arrayutils { //求数组的最大值(int) public static int getmax(int[] arr){ int max = arr[0]; for(int i = 0;i<arr.length;i++){ if(max<arr[i]){ max = arr[i]; } } return max; } //求数组的最小值(int) public static int getmin(int[] arr){ int min = arr[0]; for(int i = 0;i<arr.length;i++){ if(min>arr[i]){ min = arr[i]; } } return min; } //得到数组最大值的下标(int) public static int getmaxindex(int[] arr){ int maxindex = 0; for(int i = 0;i <arr.length;i++){ if(arr[maxindex]<arr[i]){ maxindex = i; } } return maxindex; } //得到数组最小值的下标(int) public static int getminindex(int[] arr){ int minindex = 0; for(int i = 0;i <arr.length;i++){ if(arr[minindex]>arr[i]){ minindex = i; } } return minindex; } //获得数组之和(int) public static int getsum(int[] arr){ int sum = 0; for(int i = 0; i < arr.length;i++){ sum += arr[i]; } return sum; } //获得平均值(int) public static int getaverage(int[] arr){ int avg = getsum(arr)/arr.length; return avg; } //打印数组(int) public static void printarray(int[] arr){ for(int i = 0;i<arr.length;i++){ if(i!=arr.length-1){ system.out.print(arr[i]+","); }else{ system.out.println(arr[i]); } } } //选择排序对数据进行降序排序(int) public static void selectsortdescendingarray(int[] arr){ for(int i = 0; i<arr.length-1;i++){//i<arr.length-1;最后一个不用比较 for(int j = i+1;j<arr.length;j++){ if(arr[i]<arr[j]){ int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } } //选择排序对数据进行升序排序(int) public static void selectsortascendingarray(int[] arr){ for(int i = 0; i<arr.length-1;i++){//i<arr.length-1;最后一个不用比较 for(int j = i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } } //冒泡排序对数据进行降序排序(int) public static void bubblesortdescendingarray(int[] arr){ for(int i = 0;i<arr.length-1;i++){ for(int j = 0;j<arr.length-1-i;j++){ if(arr[j]<arr[j+1]){ int temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } } } //冒泡排序对数据进行升序排序(int) public static void bubblesortascendingarray(int[] arr){ for(int i = 0;i<arr.length-1;i++){ for(int j = 0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ int temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } } } //二分查找(int) public static int binarysearch(int[] arr,int key){ int min,mid,max; min = 0; max = arr.length-1; while(arr[min]<arr[max]){ mid = (min+max)/2; if(key>arr[mid]){ min = mid+1; }else if(key<arr[mid]){ max = mid-1; }else { return mid; } } return -1; } //********************************************************************* //求数组的最大值(double) public static double getmax(double[] arr){ double max = arr[0]; for(int i = 0;i<arr.length;i++){ if(max<arr[i]){ max = arr[i]; } } return max; } //求数组的最小值(double) public static double getmin(double[] arr){ double min = arr[0]; for(int i = 0;i<arr.length;i++){ if(min>arr[i]){ min = arr[i]; } } return min; } //得到数组最大值的下标(double) public static int getmaxindex(double[] arr){ int maxindex = 0; for(int i = 0;i <arr.length;i++){ if(arr[maxindex]<arr[i]){ maxindex = i; } } return maxindex; } //得到数组最小值的下标(double) public static int getminindex(double[] arr){ int minindex = 0; for(int i = 0;i <arr.length;i++){ if(arr[minindex]>arr[i]){ minindex = i; } } return minindex; } //获得数组之和(double) public static double getsum(double[] arr){ double sum = 0; for(int i = 0; i < arr.length;i++){ sum += arr[i]; } return sum; } //获得平均值(double) public static double getaverage(double[] arr){ double avg = getsum(arr)/arr.length; return avg; } //打印数组(double) public static void printarray(double[] arr){ for(int i = 0;i<arr.length;i++){ if(i!=arr.length-1){ system.out.print(arr[i]+","); }else{ system.out.println(arr[i]); } } } //选择排序对数据进行降序排序(double) public static void selectsortdescendingarray(double[] arr){ for(int i = 0; i<arr.length-1;i++){//i<arr.length-1;最后一个不用比较 for(int j = i+1;j<arr.length;j++){ if(arr[i]<arr[j]){ double temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } } //选择排序对数据进行升序排序(double) public static void selectsortascendingarray(double[] arr){ for(int i = 0; i<arr.length-1;i++){//i<arr.length-1;最后一个不用比较 for(int j = i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ double temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } } //冒泡排序对数据进行降序排序(double) public static void bubblesortdescendingarray(double[] arr){ for(int i = 0;i<arr.length-1;i++){ for(int j = 0;j<arr.length-1-i;j++){ if(arr[j]<arr[j+1]){ double temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } } } //冒泡排序对数据进行升序排序(double) public static void bubblesortascendingarray(double[] arr){ for(int i = 0;i<arr.length-1;i++){ for(int j = 0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ double temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } } } //二分查找(double) public static int binarysearch(double[] arr,double key){ int min,mid,max; min = 0; max = arr.length-1; while(arr[min]<arr[max]){ mid = (min+max)/2; if(key>arr[mid]){ min = mid+1; }else if(key<arr[mid]){ max = mid-1; }else { return mid; } } return -1; } }
以上这篇java_int、double型数组常用操作工具类(分享)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
上一篇: 浅谈Java成员变量与属性的区别(简单最易懂的解释)
下一篇: 以图换字的几个方法及思路