Java基础篇---6.自定数组工具类
Posted 满天星!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础篇---6.自定数组工具类相关的知识,希望对你有一定的参考价值。
自定数组工具类
设计一个数组工具类
package test;
/*
* 自定义数组的工具类
*
*/
public class ArrayUtil {
//求数组的最大值
public int getMax(int[] arr) {
int maxValue = arr[0];
for(int i=1;i<arr.length;i++) {
if(maxValue<arr[i]) {
maxValue = arr[i];
}
}
return maxValue;
}
//求数组的最小值
public int getMin(int[] arr) {
int minValue = arr[0];
for(int i=1;i<arr.length;i++) {
if(minValue>arr[i]) {
minValue = arr[i];
}
}
return minValue;
}
//求数组的总和
public int getSum(int[] arr) {
int sum=0;
for(int i=0;i<arr.length;i++) {
sum+=arr[i];
}
return sum;
}
//求数组的平均值
public int getAvg(int[] arr) {
return getSum(arr)/arr.length; //方法里面调用方法
}
//反转数组
public void reverse(int[] arr) {
for(int i=0;i<arr.length/2;i++) {
int temp=arr[i];
arr[i]=arr[arr.length-i-1];
arr[arr.length-i-1]=temp;
}
}
//复制数组
public int[] copy(int[] arr) {
int[] arr1 = new int[arr.length];
for(int i=0;i<arr1.length;i++) {
arr1[i] = arr[i];
}
return arr1;
}
//数组的排序
public void sort(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];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
//遍历数组
public void print(int[] arr) {
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
}
//查找指定函数
public int getIndex(int[] arr,int dest) {
//线性查找
for(int i=0;i<arr.length;i++) {
if(dest == arr[i]) {
return i;
}
}
return -1; //返回一个负数,表示没找到。
}
}
创建一个数组测试类
package test;
public class ArrayUtilTest {
public static void main(String[] args) {
ArrayUtil util = new ArrayUtil();
int[] arr = new int[] {10,9,8,7,6,5,4,3,2,1};
//查找数组中最大数
int max = util.getMax(arr);
System.out.println("最大值为:"+ max);
// //数组排序
// System.out.println("排序前:");
// util.print(arr);
// util.sort(arr);
// System.out.println("排序后:");
// util.print(arr);
//
//查找
System.out.println("查找: ");
int index = util.getIndex(arr, 7);
if(index!=-1) {
System.out.println("找到了,索引地址为:" + index);
}else {
System.out.println("没找到:");
}
}
}
以上是关于Java基础篇---6.自定数组工具类的主要内容,如果未能解决你的问题,请参考以下文章
一脚踩进java之基础篇34——可变参数Collection工具类集合嵌套
06_Java基础语法_第6天(自定义类ArrayList集合)_讲义