• (三十)工具类


    封装的方法
    /**
    这是一个定义了操作数组常用功能的工具类,比如求最大值,选择排序,查找
    @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即可
    生成后的文档说明如图所示:
  • 相关阅读:
    E: 无法获得锁 /var/lib/dpkg/lock-frontend
    Ubuntu 18.04 更换apt源
    ubuntu18.04
    小a与“204”------数列、排序
    星际穿越
    合唱团---DP
    分苹果---暴力
    地牢逃脱----DFS搜索最优解
    下厨房---map/字符串查询
    hdu 2654 Be a hero
  • 原文地址:https://www.cnblogs.com/bgwhite/p/9377759.html
Copyright © 2020-2023  润新知