【Java集合的详细研究3】Arrays类常用方法
1、void sort(array)对数组array的元素进行升序排序
2.int binarySearch(array,val):查询元素值val在数组array中的下标
3.String toString(array):该方法将会把一个数组array转换成字符串
4.boolean equals(array1,array2):比较两个数组是否相等
5.void fill(array,val):把数组array所有元素都赋值为val
6.copyof(array,length):把数组array复制成长度为length的新数组
7.Arrays.asList(array).contains(val1):查看数组array中是否有特定的值val1
8.Arrays.hashCode(array):基于指定数组的内容返回哈希码
public static void main(String[] args) {
String [] arry1={"北京","上海","重庆","深圳"};
String [] arry2=Arrays.copyOf(arry1, 4);
//复制copyof
System.out.println("arry2是:"+Arrays.toString(arry2));
//比较 equals
System.out.println("arry1与arry2是否相等:"+Arrays.equals(arry1, arry2));
//将arry1排序 sort
Arrays.sort(arry1);
//toString
System.out.println("排序后的arry1的值:"+Arrays.toString(arry1));
//排序后arry1与arry2是否还相等 equals
System.out.println("排序后arry1与arry2是否还相等"+Arrays.equals(arry1, arry2));
//填充 fill
Arrays.fill(arry2, "广州");
System.out.println("填充之后arry2的值:"+Arrays.toString(arry2));
//查询binarySearch前提是数组已经排序过后才可以使用
System.out.println("重庆在arry1中的位置:"+Arrays.binarySearch(arry1, "重庆"));
}
结果:
arry2是:[北京, 上海, 重庆, 深圳]
arry1与arry2是否相等:true
排序后的arry1的值:[上海, 北京, 深圳, 重庆]
排序后arry1与arry2是否还相等false
填充之后arry2的值:[广州, 广州, 广州, 广州]
重庆在arry1中的位置:3
public static void main(String[] args) {
byte[] test1 = { 23, 34 };
byte[] test2 = { 23, 34 };
int[] test3 = { 4, 5, 6, 7 };
// 根据第二个参数作为索引找出对应的下标
System.out.println(Arrays.binarySearch(test3, 7));
// toString方法
System.out.println(test1.toString());
System.out.println(Arrays.toString(test1));// 重写Tostring方法
// Equals方法
System.out.println(test1.equals(test2));
System.out.println(Arrays.equals(test1, test2));// 重写了Equals方法
// fill方法
// 将指定的 byte 值分配给指定byte型数组指定范围中的每个元素。
Arrays.fill(test1, 0, 1, (byte) 56);
System.out.println(Arrays.toString(test1));
// hashCode方法
System.out.println(test1.hashCode());
System.out.println(Arrays.hashCode(test1));// 基于指定数组的内容返回哈希码
//sort方法
Arrays.sort(test1);
System.out.println(Arrays.toString(test1));
//复制copyof
int[] test4=Arrays.copyOf(test3, 4);
System.out.println("test4是:"+Arrays.toString(test4));
}
Arrays.asList(array).contains(val1):查看数组中是否有特定的值
int a[]={1,5,3,8,4};
boolean b=Arrays.asList(a).contains(1);
System.out.println(b);//注意:b的值只可能是true或false
【Java集合的详细研究3】Arrays类常用方法的更多相关文章
- 【Java集合的详细研究2】浅谈Arrays.asList的使用
首先,该方法是将数组转化为list.有以下几点需要注意: (1)该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean) (2)该方法将数组与列表 ...
- 【Java集合的详细研究5】Java中Array与ArrayList的主要区别
1)精辟阐述:可以将 ArrayList想象成一种“会自动扩增容量的Array”. 2)Array([]):最高效:但是其容量固定且无法动态改变: ArrayList: 容量可动态增长:但牺 ...
- 【Java集合的详细研究1】Collections类常用方法总结
1.sort(Collection)方法的使用(含义:对集合进行排序). 例:对已知集合c进行排序? public class Practice { public static void main(S ...
- 【Java集合的详细研究8】List,Set,Map用法以及区别
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素.一些Collection允许相同的元素而另一些不行.一些能排序而另一些不行.Java ...
- 【Java集合的详细研究9】Java堆栈(stack)的使用方法
栈是一种常用的数据结构,栈只允许访问栈顶的元素,栈就像一个杯子,每次都只能取杯子顶上的东西,而对于栈就只能每次访问它的栈顶元素,从而可以达到保护栈顶元素以下的其他元素.”先进后出”或”后进先出”就是栈 ...
- 【Java集合的详细研究7】Set和List 的关系与区别
两个接口都是继承自Collection. List (inteface) 次序是List 的最重要特点,它确保维护元素特定的顺序. --ArrayList 允许对元素快速随机访问. --LinkedL ...
- 【Java集合的详细研究6】Java 数组
Java 语言中提供的数组是用来存储固定大小的同类型元素. 声明数组变量 double[] myList; // 首选的方法 或 double myList[]; // 效果相同,但不是首选方法 创建 ...
- 【Java集合的详细研究4】Java中如何遍历Map对象的4种方法
方法一 通过Map.entrySet遍历key和value,在for-each循环中使用entries来遍历.推荐,尤其是容量大时 这是最常见的并且在大多数情况下也是最可取的遍历方式.在键值都需要时使 ...
- java基础-Arrays类常用方法介绍
java基础-Arrays类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Array类的概念 此类包含用来操作数组(比如排序和搜索)的各种方法.需要注意,如果指定 ...
随机推荐
- shell教程一:字符串操作
一:Linux shell字符串截取与拼接 假设有变量 var=http://www.linuxidc.com/123.htm 1 # 号截取,删除左边字符,保留右边字符. echo ${var#* ...
- github贡献代码步骤
1.在github上fork项目.fork:在自己github仓库创建一个与该项目内容一样的同名项目,你可以在这个新项目里自由的修改内容. 2.在本地电脑git自己github仓库项目下来.如果直接g ...
- uva 10537 Toll! Revisited(优先队列优化dijstra及变形)
Toll! Revisited 大致题意:有两种节点,一种是大写字母,一种是小写字母. 首先输入m条边.当经过小写字母时须要付一单位的过路费.当经过大写字母时,要付当前財务的1/20做过路费. 问在起 ...
- macbook基本配置
1.安装iterm2, 2.安装搜狗输入法, 3.安装迅雷, 4.安装homebrew 5.安装新版的gcc,bash等等,及升级配置文件.
- qsort函数以及sort函数使用方法
sort函数的使用方法 做ACM题的时候,排序是一种常常要用到的操作. 假设每次都自己写个冒泡之类的O(n^2)排序,不但程序easy超时,并且浪费宝贵的比赛时间,还非常有可能写错. STL里面 ...
- hdoj1010 Temperor of the bone
Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- sass的学习笔记
sass初学入门笔记(一) 我本身是个新手,一边学sass一边记下的笔记,可能有点罗嗦,但是复习起来的话还是比较全面直观的.当然,最重要的还是去实践,实践得真理 其它 CSS 预处理器语言: CSS ...
- sqlserver 关于子查询的优化操作
在对条件需要用到子查询的时候,通常可以通过连接来代替子查询来完成操作,更加高效 SELECT t1.id,t2.columnName,t2.columnType,t1.rownum,t1.cellVa ...
- 【C++程序员学 python】python 之变量
既然学过C++,那么就应该知道变量是什么,常量是什么. python 相比于C++,在使用变量之前不用先声明. 而是直接使用,python 会根据你的变量自动识别其类型. 假如a = 123 那么a ...
- Spring的作用域以及RequestContextListener作用<转>
一.配置方式 在Spring2.0中除了以前的Singleton和Prototype外又加入了三个新的web作用域,分别为request.session和global session,如果你想让你的容 ...