/*
注释:
1、单行注释
2、多行注释
3、文档注释
工具类:编写一个通用的类,类中有一些相关的方法功能,可以让我们在不同的程序中都能够使用
如何编写一个工具类?(举例:写一个数组相关操作的工具类)
1、构造方法私有化
2、方法必须是静态的,使用static进行修饰
将来我们工具类中的方法可能会有很多,我们应该对每一个方法以及类进行解释,使用文档注释对工具类进行注释
我们在工具类中写好了文档注释之后,可以自动生成对应帮助文档。
javadoc -d D:\bigdata31\day07\doc -author -version ArrayTool.java
我们学会了使用文档注释生成帮助文档的话,那我们就在想,jdk中提供了那么多了自带的类给我们去使用,是不是应该也要给我们一个帮助文档呢?
不同的jdk版本,帮助文档是不一样的,我们现在学习是jdk1.8的帮助文档。
*/
/*
如何使用帮助文档?Scanner
1、双击打开帮助文档
2、点击索引
3、搜索要学习的类 Scanner
4、看属于哪一个包下的
如果这个类是在java.lang包下的话,将来在程序中使用的时候,是不需要导包的。
其余包下的类,将来在程序中使用的时候,都是需要导包的。
5、类的关系(继承xx,实现xx)
6、看这个类是干什么的
7、看成员:
构造方法:
如果一个类没有构造方法,大概率是一个工具类
如果有构造方法,那就得到如何创建该类的对象
成员变量:
是常量(后面会说)还是变量
成员方法:
看是静态还是非静态的
*/
/**
* 这是数加最帅的男人-陈真编写的工具类,该工具类主要是针对数组提供了一些常用的功能方法
* @author XiaoHu
* @version V1.0.0
*/
public class ArrayTool {
private ArrayTool(){}
/**
* 该方法是针对有序的int类型数组元素中进行二分查找。
* @param arr 要查找的int类型数组
* @return 返回查找后的元素索引,若存在,返回对应元素索引,否则,返回 -1
*/
public static int erFen(int[] arr){
//定义一个front索引
int front = 0;
//定义结束索引end
int end = arr.length - 1;
int number = 12;
boolean flag = true;
int index = -1;
while (front <= end) {
//算中间元素的索引
int mid = (front + end) / 2;
//将查找的元素与中间的元素进行比较
if (number > arr[mid]) {
front = mid + 1;
} else if (number < arr[mid]) {
end = mid - 1;
} else {
System.out.println("找到该元素!元素的索引为:" + mid);
index = mid;
flag = false;
break;
}
}
if(flag){
System.out.println("该序列中不存在该元素!");
}
return index;
}
/**
* 该方法是针对元素是int类型的一维数组进行冒泡排序,最终排序的顺序是从小到大。
* @param arr 等待被冒泡排序的int类型数组
* @return 返回的是排序后的数组地址值
*/
public static int[] bubbleSort(int[] arr) {
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
//比较交换
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
return arr;
}
/**
* 该方法是针对一个元素是int类型的一维数组进行逆序。
* @param arr 等待被逆序的一维数组
* @return 返回逆序后的一维数组的地址值
*/
public static int[] niXu(int[] arr) {
for (int start = 0, end = arr.length - 1; start < end; start++, end--) {
int tmp = arr[start];
arr[start] = arr[end];
arr[end] = tmp;
}
return arr;
}
/**
* 将元素为int类型的一维数组以指定的格式输出。
* 输入:数组中的元素(1,32,6,12,4,1)
* 输出:[1,32,6,12,4,1]
* @param array 等待被格式打印输出的一维数组。
*/
public static void printIntArray(int[] array) {
for (int i = 0; i < array.length; i++) {
if (i == 0) {
System.out.print("[" + array[i] + ", ");
} else if (i == array.length - 1) {
System.out.print(array[i] + "]");
} else {
System.out.print(array[i] + ", ");
}
}
System.out.println();
}
}
标签:arr,end,int,day07,文档,数组,工具,制作,array
From: https://www.cnblogs.com/qiwei-bigdata/p/18339509