A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 大大的心 中级黑马   /  2014-12-2 22:09  /  1372 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
* 静态的应用。
*
* 每一个应用程序中都有共性的功能。
* 可以将这些功能进行抽取,独立封装,以便复用。
*
* 虽然可以通过建立ArrayTool的对象使用这些工具方法,对数组进行操作。
* 发现了问题:
* 1.对象是用于封装数据的,可是ArrayDemo对象并未封装特有数据。
* 2.操作数组的每一个方法都没有用到ArrayTool对象的特有数据。
*
* 这时就考虑,让程序更严谨,是不需要对象的。
* 可以将ArrayTool中的方法都定义成static,直接通过类名调用即可。
*
* 将方法静态后,可以方便于使用,但是该类还是可以被其他程序建立对象。
* 为了更为严谨强制该类不能建立对象,可以通过将构造函数私有化完成。
*
* 接下来,将ArrayTool.class文件发送给其他人,其他人只要将文件设置到classpath路径下,就可以使用工具类。
* 但是,很遗憾,该类中到底定义了多少个方法,对方并不清楚因为该类没有使用说明书。
* 开始制作程序的说明书,java的说明书通过文档注释来完成。
*
*/

(字数原因,接下来在回复中继续写)

评分

参与人数 1技术分 +1 收起 理由
杨佳名 + 1

查看全部评分

3 个回复

倒序浏览

/**
* 这是一个可以对数组进行操作的工具类,该类提供了,获取最大值和最小值,
* 排序等功能。
* @author 庄大大
* @version V1.1
*
*/
public class ArrayTool
{       
        /**
         * 空参数的构造函数。
         */
        public ArrayTool()
        {
               
        }
        /**
         * 获取整形数组中的最大值:@param arr 接收一个int类型的数组
        @return 返回一个该数组的最大值
        */
        public static int getMax(int[] arr)
        {
                int max=0;
                for(int x=1;x<arr.length;x++)
                {
                        if(arr[x]>arr[max])
                                max=x;
                }
                return arr[max];
        }
        /**
         * 获取整形数组中的最小值:@param arr 接收一个int类型的数组
        @return 返回一个该数组的最小值
        */
        public static int getMin(int[] arr)
        {
                int  min=0;
                for(int x=1;x<arr.length;x++)
                {
                        if(arr[x]<arr[min])
                                min=x;
                }
                return arr[min];
        }
        /**
         * 给int数组进行选择排序
         * @param arr 接收一个int类型的数组
         */
        public static void selectSort(int[] arr)
        {
                for(int x=0;x<arr.length-1;x++)
                {
                        for(int y=x+1;y<arr.length;y++)
                        {
                                if(arr[x]>arr[y])
                                {
                                        swap(arr,x,y);
                                }
                        }
                }
        }
        /**
         * 给int数组进行冒泡排序
         * @param arr 接收一个int类型的数组
         */
        public static void bubbleSort(int[] arr)
        {
                for(int x=0;x<arr.length-1;x++)
                {
                        for(int y=0;y<arr.length-x-1;y++)
                        {
                                if(arr[y]>arr[y+1])
                                {
                                        swap(arr,y,y+1);
                                }       
                        }
                }
        }
        /**
         * 给数组中的元素进行位置的置换
         * @param arr 接收一个int类型的狮子
         * @param a 要置换的位置
         * @param b 要置换的位置
         */
        public static void swap(int[] arr,int a,int b)
        {
                        int temp=arr[a];
                        arr[a]=arr[b];
                        arr[b]=temp;
        }
        /**
         * 用于打印数组中的元素,打印形式:[element1,element2 ...]
         */
        public static void print(int[] arr)
        {
                System.out.print("[");
                for(int x=0;x<arr.length;x++)
                {
                        if(x!=arr.length-1)
                                System.out.print(arr[x]+",");
                        else
                                System.out.println(arr[x]+"]");                               
                }
        }
}
回复 使用道具 举报
多谢多谢,我好好看看这个
回复 使用道具 举报
yibo924 发表于 2014-12-2 22:17
多谢多谢,我好好看看这个

嘿嘿,觉得好,就发点币来呗。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马