/**

什么时候使用静态:
要从两方面下手:
什么时候定义静态变量(类变量)呢?
   当对象中出现共享数据时,该数据被静态所修饰;
   当对象中的特有数据要定义成非静态存在于内存中时;
   因为静态修饰的内容有成员变量和函数
什么时候定义静态函数呢?
   当功能内部没有访问到非静态数据(对象的特有数据)
   那么该功能可以定义成静态反的
将方法静态后,可以便于使用;但是该类还是可以被其他程序建立对象的。
为了便于严谨,强制让该类不能建立对象。
可以通过将构造函数石油化完成。
接下来,将ArrlyTool.class文件发送给其他人,其他人只要将文件设置到classpath 路径下就可以使用该工具类了。
但是,很遗憾,该类中定义了多少个方法,对方法不清楚。因为该类并没有使用说明书。
开始制作程序说明书。java说明书通过文档注释来完成。
*/
/**
这是一个可以对数组进行操作的工具类,该类提供了,获取最值,排序等功能。
@author 张三
@version v1.1
*/
public class ArrayTool
{
   /**
   空参数构造函数。
   */
   private 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 selectScrt(int[] arr)
   {
       for (int x=0;x<arr.length;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 要置换的位置
   */
   private 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 printArray(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]+"]");
       }
   }
}