Java Arrays工具类
目录
Arrays用于操作数组工具类,里面定义了常见操作数组的静态方法。
注意:要使用Arrays工具类,必须导入Arrays工具类。
import java.util.Arrays;
1.1 toString方法
public static String toString(Type[] arr)
,返回指定数组内容的字符串表示形式。
【示例】
int[] arr = {3, 5, 1, 7, 6, 2, 4};
// 把数组转化为字符串输出
System.out.println(Arrays.toString(arr)); // 输出:[1, 2, 3, 4, 5, 6]
1.2 equals判断
public static boolean equals(Type[] a1, Type[] a2)
, 判断两个数组中的内容是否相同。
【示例】
int[] arr1 = {3, 5, 1, 7, 6, 2, 4};
int[] arr2 = {3, 5, 1, 7, 6, 2};
// 判断两个数组的内容是否相同
boolean flag = Arrays.equals(arr1, arr2);
System.out.println(flag); // 输出:false
1.3 sort排序
public static void sort(Type[] arr)
,对数组中的内容进行升序排序。
【示例】
int[] arr = {3, 5, 1, 7, 6, 2, 4};
// 对数组中的内容进行升序排序
Arrays.sort(arr);
System.out.println(Arrays.toString(arr)); // 输出:[1, 2, 3, 4, 5, 6, 7]
1.4 二分法查找
public static int binarySearch(Type[] arr, Type key)
,查找key在数组中的索引位置。如果找到,则返回索引位置;如果没找到,则返回一个负数。
注意:在调用此调用之前,必须先对数组进行排序。
【示例】
// 排序好的数组
int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
// 查找6在数组中的索引位置
int index = Arrays.binarySearch(arr, 6);
System.out.println(index); // 输出:6
// 查找18在数组中的索引位置
index = Arrays.binarySearch(arr, 18);
System.out.println(index); // 输出:-11,证明没找到
1.5 fill填充数组
public static void fill(Type[] a, Type val)
,给数组填充指定内容。
【示例】
int[] arr = new int[5];
Arrays.fill(arr, 89);
System.out.println(Arrays.toString(arr)); // 输出:[89, 89, 89, 89, 89]
1.6 数组拷贝
public static Type[] copyOf(Type[] original, Type newLength)
,从数组的第一个元素开始拷贝,拷贝指定长度的数组,拷贝完成返回一个新的数组。
【示例】
int[] arr = {1, 2, 3, 4, 5};
int[] newArr = Arrays.copyOf(arr, 3);
System.out.println(Arrays.toString(newArr)); // 输出:[1, 2, 3]
public static Type[] copyOfRange(Type[] original, int from, int to)
,从指定范围拷贝数组,拷贝完成返回一个新的数组。
【示例】
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8};
int[] newArr = Arrays.copyOfRange(arr, 2, 5);
System.out.println(Arrays.toString(newArr)); // 输出:[3, 4, 5]
1.7 Arrays.asList()
- Arrays类的
static <T> List<T> asList(T... a)
返回一个受 指定数组 支持的 固定大小 的 列表。 - 该方法得到的集合 不能做 元素的增加和删除,否则回报
java.lang.UnsupportedOperationException
异常
import java.util.Arrays;
import java.util.List;
/**
* Arrays类:
* static <T> List<T> asList(T... a) 返回一个受 指定数组 支持的 固定大小 的 列表。
* 该方法得到的集合 不能做 元素的增加和删除
*/
public class Arrays_asList {
public static void main(String[] args) {
System.out.println("-----------Arrays类的asList----------------");
/*
* Arrays.asList 得到的集合不能做元素的增加和删除
*/
List ints = Arrays.asList(1,2,3,4,5);
System.out.println(ints);
// java.lang.UnsupportedOperationException
// ints.add(100);
// ints.remove(2);
System.out.println(ints.contains(2));
System.out.println(ints);
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/85602.html