zoukankan      html  css  js  c++  java
  • java--静态的应用(工具类)

    ArrayTool.java文件

    /**
    静态的应用。
    
    每一个应用程序中都有公行动的功能,可以将这些功能进行抽取,独立封装以便复用
    
    由于ArrayTool中并没有封装特有数据,而且数组的每一个方法也没有用到ArrayTool中的特有数据,为让程序更加严谨,
    可以将ArrayToll中的方法都定义程static的,直接用类名调用即可
    接下来就可以将ArrayTool发送给其他人,其他人只要将该文件设置到classpath的路径下就可以使用该工具
    为使对方清楚该类的功能,可以通过说明书(文档注释)来完成
    */
    
    /**
    这是一个可以对数组进行曹组的工具类,该类中提供了获取最值(最大,最小)、排序的功能
    @author 某某
    @version V1.0
    */
    
    class ArrayTool 
    {
    	/**
    	空参数构造函数,由于前文中提到的原因,避免被建立对象而占用过多无用内存,声明为private类型
    	*/
    	private ArrayTool(){}
    
    	/**
    	获取意义整型数组的最大值
    	@param arr 接受一个int型数组
    	@return max 返回一个该数组中的最大值
    	*/
    	public static int getMax(int[] arr)
    	{
    		int max=0;
    		for (int i=0 ; i<arr.length ; i++ )
    		{
    			if(arr[i]>max)
    				max=arr[i];
    		}
    		return max;
    	}
    
    	/**
    	获取意义整型数组的最小值
    	@param arr 接受一个int型数组
    	@return min 返回一个该数组中的最小值
    	*/
    	public static int getMin(int[] arr)
    	{
    		int min=9999;
    		for (int i=0 ; i<arr.length ; i++ )
    		{
    			if(arr[i]<min)
    				min=arr[i];
    		}
    		return min;
    	}
    
    	/**
    	给int型数组选择排序(自小到大)
    	@param arr 接受一个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[i]>arr[j])
    				{
    					swap(arr,i,j);
    				}
    			}
    		}
    	}
    	
    	/**
    	给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 数组
    	@param i 要交换的位置坐标1
    	@param i 要交换的位置坐标2
    	*/
    	private static void swap(int[] arr,int i,int j)
    	{
    		int temp=arr[i];
    		arr[i]=arr[j];
    		arr[j]=temp;
    	}
    
    	/**
    	打印数组中的元素。
    	*/
    	public static void printArray(int[] arr)
    	{
    		System.out.print("[");
    		for (int i=0 ; i<arr.length ; i++ )
    		{
    			if(i!=arr.length-1)
    				System.out.print(arr[i]+", ");
    			else
    				System.out.println(arr[i]+"]");
    		}
    	}
    }
    


    ArrayToolDemo文件


    class  ArrayToolDemo     //测试主函数
    {
    	public static void main(String[] args) 
    	{
    		int[] arr = {32,1,45,6,89,33,99};            //声明一个无需数组
     		
    		ArrayTool.printArray(arr);                   //打印数组
    
    		int max = ArrayTool.getMax(arr);             //测试最大值
    		System.out.println("max = "+max);
    
    		int min = ArrayTool.getMin(arr);             //测试最小值
    		System.out.println("min = "+min);
    
    		//ArrayTool.printArray(arr);                     //打印数组
    		//ArrayTool.selectSort(arr);              //测试选择排序
    		//ArrayTool.printArray(arr);                       //打印出排序好的数组
    
    		ArrayTool.printArray(arr);                      //打印数组
    		ArrayTool.bubbleSort(arr);                //测试冒泡排序
    	    ArrayTool.printArray(arr);                     //打印出排序好的数组
    
    
    	}
    }
    




  • 相关阅读:
    Ubuntu 出现 apt-get问题的解决方法
    Conversion to Dalvik format failed: Unable to execute dex: null
    java中判断是否为中文
    解决:Unable to connect to repository https://dl-ssl.google.com/android/eclipse/site.xml
    Android 获取本机WIFI及3G网络IP
    xp重装系统后恢复Linux启动
    Android中空格及换行
    ubuntu12.10设置thunderbird开机自启动
    web安全及防护
    回归基础: JavaScript 变量提升
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3236812.html
Copyright © 2011-2022 走看看