• (三十)工具类


    封装的方法
    /**
    这是一个定义了操作数组常用功能的工具类,比如求最大值,选择排序,查找
    @author czy
    @version 1.0
    */
    public class ArrayTool {
        /*
        *    对类的 构造函数私有化后,调用时就不能通过实例化对对象访问,只能通过类名去访问
        */
        private ArrayTool() {}
        /**
        求数组最大值
        @param int[] 接受一个 整形的数组
        @return int 返回一个整形的最大值
        */
        public static int getMax(int[] arr) {
            int max = arr[0];
            for(int i = 1;i<arr.length;i++) {
                if(max < arr[i]) {
                    max = arr[i];
                }
            }
            return max;
        }
        /**
        数组的选择排序
        @param int[] 接受一个整形数组
        */
        public static void selectSort(int[] arr) {
            for(int i = 0;i < arr.length-1;i++) {
                for(int j = i+1;j < arr.length;j++) {
                    if(arr[j] < arr[i]) {
                        exchange(arr,j,i);
                    }
                }
            }
        }
        /*
        *    两个变量值的交换
        */
        private static void exchange(int[] arr,int i,int j) {
            int temp;
            temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
        /**
        数组的二分法查找
        @param int[] 接受一个整形数组
        @param int 接受被查找的数
        @return int 返回的是下标或-1
        */
        public static int halfSearch(int[] arr,int key) {
            int min = 0,max = arr.length -1,mid;
            while(min<=max) {
                mid = (min + max)>>1;
                if(key > arr[mid]) {
                    min = mid + 1;
                } else if(key<arr[mid]){
                        max = mid -1;
                } else {
                    return mid;
                }
            }
            return -1;
        }
     
    }
    

     

     
    调用方:
    /*
    *    工具类的封装一般都为静态
    */
    class Demo11 {
        public static void main(String[] args) {
            //静态的应用:工具类
            //ArrayTool arrayTool = new ArrayTool();
            int[] arr = {34,2,56,78};
            //int max = arrayTool.getMax(arr);
            int max = ArrayTool.getMax(arr);
            System.out.println(max);
        }
    }
    注:私有属性是不需要进行注释的。java文件名和封装的工具类的名称需要一致,封装的类必须用public提高为最高权限
    写完后再控制台输入命令 :javadoc -d doc ArrayTool.java
    doc为创建的文档说明的文件夹目录名称
    ArrayTool.java时需要进行文档生成的java文件
    -d 后面可以跟路径  如果为.则默认当前目录下也可以指定目录
    生成后,会在doc文件中生成很多的html文件,我们只需要打开index.html即可
    生成后的文档说明如图所示:
  • 相关阅读:
    POJ1182 食物链---(经典种类并查集)
    HDU1025---(LIS 最长上升子序列 的应用)
    HDU5748---(记录每个元素的 最长上升子序列 nlogn)
    c++ 批量初始化数组 fill和fill_n函数的应用
    JNI 方法注册与签名+BufferedReader使用readLine问题
    正确在遍历中删除List元素
    Head First Java设计模式思维导图总结
    关于一些基础的Java问题的解答(七)
    关于一些基础的Java问题的解答(六)
    关于一些基础的Java问题的解答(四)
  • 原文地址:https://www.cnblogs.com/bgwhite/p/9377759.html
Copyright © 2020-2023  润新知