本文将整理
java.util.Arrays工具类比较常用的方法:
本文介绍的方法基于JDK 1.7 之上。
1. asList方法
@SafeVarargs
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
使用该方法可以返回一个固定大小的List,如:
List<String> stringList = Arrays.asList("Welcome", "To", "Java",
"World!");
List<Integer> intList = Arrays.asList(1, 2, 3, 4);
2. binarySearch方法
binarySearch方法支持在整个数组中查找,如:
int index = Arrays.binarySearch(new int[] { 1, 2, 3, 4, 5, 6, 7 }, 6);
以及在某个区间范围内查找, 如:
public static int binarySearch(int[] a, int fromIndex, int toIndex,
int key) {
rangeCheck(a.length, fromIndex, toIndex);
return binarySearch0(a, fromIndex, toIndex, key);
}
int index = Arrays.binarySearch(new int[] { 1, 2, 3, 4, 5, 6, 7 }, 1, 6, 6);
3. copyOf及copyOfRange方法
如:
String[] names2 = { "Eric", "John", "Alan", "Liz" };
//[Eric, John, Alan]
String[] copy = Arrays.copyOf(names2, 3);
//[Alan, Liz]
String[] rangeCopy = Arrays.copyOfRange(names2, 2,
names2.length);
4. sort方法
String[] names = { "Liz", "John", "Eric", "Alan" };
//只排序前两个
//[John, Liz, Eric, Alan]
Arrays.sort(names, 0, 2);
//全部排序
//[Alan, Eric, John, Liz]
Arrays.sort(names);
另外,Arrays的sort方法也可以结合比较器,完成更加复杂的排序。
public static <T> void sort(T[] a, Comparator<? super T> c) {
if (LegacyMergeSort.userRequested)
legacyMergeSort(a, c);
else
TimSort.sort(a, c);
}
5. toString方法
Arrays的toString方法可以方便我们打印出数组内容。
如:
String[] names = { "Liz", "John", "Eric", "Alan" };
Arrays.sort(names);
System.out.println(Arrays.toString(names));
控制台将打印出
[Alan, Eric, John, Liz]
6. deepToString方法
如果需要打印二维数组的内容:
int[][] stuGrades = { { 80, 81, 82 }, { 84, 85, 86 }, { 87, 88, 89 } };
如果直接用
System.out.println(Arrays.toString(stuGrades));
那么得到的结果类似于
[[I@35ce36, [I@757aef, [I@d9f9c3]}
这个时候得用
deepToString方法才能得到正确的结果[[80, 81, 82], [84, 85, 86], [87, 88, 89]]
System.out.println(Arrays.deepToString(stuGrades));
7. equals方法
使用Arrays.equals来比较1维数组是否相等。
String[] names1 = { "Eric", "John", "Alan", "Liz" };
String[] names2 = { "Eric", "John", "Alan", "Liz" };
System.out.println(Arrays.equals(names1, names2));
8. deepEquals方法
Arrays.deepEquals能够去判断更加复杂的数组是否相等。
int[][] stuGrades1 = { { 80, 81, 82 }, { 84, 85, 86 }, { 87, 88, 89 } };
int[][] stuGrades2 = { { 80, 81, 82 }, { 84, 85, 86 }, { 87, 88, 89 } };
System.out.println(Arrays.deepEquals(stuGrades1, stuGrades2));
9. fill方法
int[] array1 = new int[8];
Arrays.fill(array1, 1);
//[1, 1, 1, 1, 1, 1, 1, 1]
System.out.println(Arrays.toString(array1));
转载请注明出处:http://mouselearnjava.iteye.com/blog/1985990
- 大小: 60.1 KB
- 大小: 41.9 KB
分享到:
相关推荐
Antenna Arrays.pdf
Gain an in-depth understanding of PHP 7 arrays. After a quick overview of PHP 7, each chapter concentrates on single, multi-dimensional, associative, and object arrays. PHP Arrays is a first of its ...
/** *Arrays提供数组操作的一系列实用方法 *1输出 *2排序 *3二分查找 *4复制 *5扩容 */
radar antenna arrays, and smart antenna arrays for automatic cruise control applications provide increased safe travelling for vehicle passengers. Vehicle localization techniques based on the antenna ...
PHP Arrays Single Multi-dimensional...pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
NULL 博文链接:https://chaoyi.iteye.com/blog/2082720
网络图片地址url集合arrays.xml文件
Microphone Arrays : A Tutorial
PHP Arrays Single, ...pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
利用电磁波的相干原理,通过计算机控制输往天线各阵元电流相位的变化来改变波束的方向,同样可进行扫描,称为电扫描。天线阵,根据扫描情况可分为相扫、频扫、相/相扫、相/频扫、机/相扫、机/频扫、有限扫等多种体制...
ite_Antenna_Arrays_and_FSS
Constructing Compressed Suffix Arrays with Large Alphabets 生物信息论文
个人研究所得,包含对其内部jdk源码的分析。 同时会结合ArrayList中对该两个方法的调用做进一步说明。...总结一句话:在允许的情况下,尽量调用System.arraycopy方法,实在不行再调用Arrays.copyOf方法。
Arduino项目开发 Control_Arrays_Arrays.pdf Arduino项目开发 Control_Arrays_Arrays.pdf Arduino项目开发 Control_Arrays_Arrays.pdf Arduino项目开发 Control_Arrays_Arrays.pdf Arduino项目开发 Control_Arrays_...
主要介绍了Java Arrays.asList使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
天线圣经-Finite Antenna Arrays and FSS
There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)). Java AC版本
Light scattering by particle and hole arrays for electric magnetic
麦克风阵列的语音信号处理算法方面的经典书籍,包含麦克风阵列的语音增强、声源定位、麦阵应用等方面的算法
arrays的常用API