JDK帮助文档格式
1、以/*开头,以/结尾的方式在每个类方法前添加相关信息,相关信息包含整个类的说明,构造方法的说明、以及成员方法的说明
2、具体格式如下
在整个类前面添加的说明文档为
/**
Title:类名
Description:类的相关功能描述
@author 张三
@version 1.0
*/在每个构造方法和成员方法前添加的说明文档
/**
方法功能描述
@para 参数 外部传递的参数
@return 返回值类型
*/
3、封装的目的
每个程序都有共性的功能,可以将这些功能 进行抽取,独立封装,以便复用
虽然可以通过建立ArrayTool的对象使用这些工具方法,对数组进行操作。
问题所在:
1、对象是用于封装数据的,科室ArrayTool对象并未封装特有数据
2、操作数组找那个的每一个方法都没有用到ArrayTool对象中的特有数据
这时就可以考虑,让程序更严谨,是不需要对象的。
可以将ArrayTool中的方法都定义成static的,直接通过类名来调用即可
将方法都静态后,可以方便使用,但是该类还是可以被其他程序建立对象的
为了更为严谨的,强制让该类不能建立对象。可以通过将构造函数私有化完成。
*/
/**这是一个可以对数组镜子能够操作的工具类,给类中提供了,供获取最值,排序功能
@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];
}
/**
插入排序法
@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-1;j++)
{
if(arr[i]>arr[j])
swap(arr, i ,j);
}
}
}
/**
冒泡排序法
@param arr 会接受一个int型数组
*/
public static void bubbleSort(int[] arr)
{
for (int i=0 ;i<arr.length;i++ )
{
for(int j=0;j<arr.length-1-i;j++)
{
if(arr[j]>arr[j+1])
swap(arr, j ,j+1);
}
}
}
/**
交换两个数的值
@param arr 会接受一个int型数组,以及要交换的下角标
*/
private static void swap(int[] arr, int a,int b)
{
int temp=arr[a];
arr[a]=arr[b];
arr[b]=temp;
}
/**
输出一个数组
@param arr 会接受一个int型数组
打印形式是[element1,element2,element3...]
*/
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]+"]");
}
}
/**
输出显示
@param a 会接受一个int型变量
*/
public static void print1(int a)
{
System.out.print1(a);
}
}