《java入门第一季》之Arrays类

时间:2022-12-04 10:00:18

前面介绍了排序问题(见博客http://blog.csdn.net/qq_32059827/article/details/51362390);二分查找问题(见博客http://blog.csdn.net/qq_32059827/article/details/51363949)

接下来用一个类快速实现排序和二分查找。Arrays类

import java.util.Arrays;

/*
* Arrays:针对数组进行操作的工具类。比如说排序和查找。
* 1:public static String toString(int[] a)返回指定数组内容的字符串表示形式。
* 2:public static void sort(int[] a) 对数组进行排序,对指定的 int 型数组按数字升序进行排序。
* 3:public static int binarySearch(int[] a,int key) 二分查找。使用二分搜索法来搜索指定的 int 型数组,以获得指定的值。
* a - 要搜索的该数组
key - 要搜索的值
*/
public class ArraysDemo {
public static void main(String[] args) {
// 定义一个数组
int[] arr = { 24, 69, 80, 57, 13 }; // public static String toString(int[] a) 把数组转成字符串
System.out.println("排序前:" + Arrays.toString(arr)); // public static void sort(int[] a) 对数组进行排序
Arrays.sort(arr);//返回值是void类型,先排序再输出
System.out.println("排序后:" + Arrays.toString(arr)); // [13, 24, 57, 69, 80]。arr = {13, 24, 57, 69, 80}int类型数组
// public static int binarySearch(int[] a,int key) 二分查找
//注意:二分查找一个无序的额数组的索引是不正确的思路。
System.out.println("binarySearch:" + Arrays.binarySearch(arr, 57));
System.out.println("binarySearch:" + Arrays.binarySearch(arr, 558));
}
}

可见排序和二分查找变得如此简单。