Java中对Array数组的常用操作
目录:
- 声明数组;
- 初始化数组;
- 查看数组长度;
- 遍历数组;
- int数组转成string数组;
- 从array中创建arraylist;
- 数组中是否包含某一个值;
- 将数组转成set集合;
- 将数组转成list集合;
- Arrays.fill()填充数组;
- 数组排序;
- 复制数组;
- 比较两个数组;
- 去重复;
- 查询数组中的最大值和最小值;
备注:文内代码具有关联性。
1.声明数组;
String [] arr; int arr1[]; String[] array=new String[5]; int score[]=new int[3];
2.初始化数组;
//静态初始化 int arr2[]=new int[]{1,2,3,4,5}; String[] array1={"马超","马云","关羽","刘备","张飞"}; String[] array2=new String[]{"黄渤","张艺兴","孙红雷","小猪","牙哥","黄磊"}; int score[]=new int[3]; //动态初始化 for(int i=0;i<score.length;i++) { score[i]=i+1; }
3.查看数组长度;
int length=array1.length; System.out.println("length: "+array1.length);
4.遍历数组;
for (int i = 0; i < array1.length; i++) { System.out.println(array1[i]); }
5.int数组转成string数组;
int[] array3={1,2,3,4,5,6,7,8,9,0}; String arrStrings=Arrays.toString(array3); System.out.println(arrStrings);
6.从array中创建arraylist;
ArrayList<String> arrayList=new ArrayList<String>(Arrays.asList(array1)); System.out.println(arrayList);
7.数组中是否包含某一个值;
String a="马超"; String[] array1={"马超","马云","关羽","刘备","张飞"}; if (Arrays.asList(array1).contains(a)) { System.out.println("马超在这里"); }
8.将数组转成set集合;
String[] array2=new String[]{"黄渤","张艺兴","孙红雷","小猪","牙哥","黄磊"}; Set<String> set=new HashSet<String>(Arrays.asList(array2)); System.out.println(set);
9.将数组转成list集合;
String[] array2=new String[]{"黄渤","张艺兴","孙红雷","小猪","牙哥","黄磊"}; //方法 1. List<String> list=new ArrayList<String>(); for (int i = 0; i < array2.length; i++) { list.add(array2[i]); } String[] arrStrings2={"1","2","3"}; //方法 2. List<String > list2=java.util.Arrays.asList(arrStrings2); System.out.println(list2);
10.Arrays.fill()填充数组;
int[] arr3=new int[5]; Arrays.fill(arr3, 10); //将数组全部填充10 //遍历输出 for (int i = 0; i < arr3.length; i++) { System.out.println(arr3[i]); }
11.数组排序;
//方法 1. int[] arr4 = {3, 7, 2, 1, 9}; Arrays.sort(arr4); //.sort(int[] a) 放入数组名字 for (int i = 0; i < arr4.length; i++) { System.out.println(arr4[i]); } //方法 2. int[] arr5 = {3, 7, 2, 1, 9,3,45,7,8,8,3,2,65,34,5}; Arrays.sort(arr5, 1, 4); //.sort(a, fromIndex, toIndex) 从第几个到第几个之间的进行排序 for (int i = 0; i < arr5.length; i++) { System.out.println(arr5[i]); }
12.复制数组;
//方法 1. int[] arr6 = {3, 7, 2, 1}; int[] arr7=Arrays.copyOf(arr6, 10); //指定新数组的长度 //方法 2. int[] arr8=Arrays.copyOfRange(arr6, 1, 3); //只复制从索引[1]到索引[3]之间的元素(不包括索引[3]的元素) for (int i = 0; i < arr8.length; i++) { System.out.println(arr8[i]); }
13.比较两个数组;
int[] arr9 = {1, 2, 3, 4,5,6,7,8,9,0}; boolean arr10=Arrays.equals(arr6, arr9); System.out.println(arr10);
14.去重复;
int[] arr11 = {1, 2, 3, 4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3}; //利用set的特性 Set<Integer> set2=new HashSet<Integer>(); for (int i = 0; i < arr11.length; i++) { set2.add(arr11[i]); } System.out.println(set2); int[] arr12 = new int[set2.size()]; int j=0; for (Integer i:set2) { arr12[j++]=i; } System.out.println(Arrays.toString(arr12));
15.查询数组中的最大值和最小值;
int[] arr11 = {10, 2, 3, 4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3}; //计算最大值 int max = arr11[0]; for (int i = 1; i < arr11.length; i++) { if (arr11[i] > max) { max = arr11[i]; } } System.out.println("Max is " + max); //计算最小值 int min = arr11[0]; for (int i = 0; i < arr11.length; i++) { if (arr11[i]<min) { min = arr11[i]; } } System.out.println("Min is " + min);
附:完整代码:
package MyTest01; import java.util.*; public class ArrayTest02 { public static void main(String[] args) { //声明数组 String [] arr; int arr1[]; //初始化数组 int arr2[]=new int[]{1,2,3,4,5}; String[] array1={"马超","马云","关羽","刘备","张飞"}; String[] array2=new String[]{"黄渤","张艺兴","孙红雷","小猪","牙哥","黄磊"}; String[] array=new String[5]; //查看数组的长度 int length=array1.length; System.out.println("length: "+array1.length); //输出数组 // System.out.println(array1); //结果:[Ljava.lang.String;@32f22097 System.out.println("arr2: "+Arrays.toString(arr2)); //遍历数组 for (int i = 0; i < array1.length; i++) { // System.out.println(array1[i]); } //int数组转成string数组 int[] array3={1,2,3,4,5,6,7,8,9,0}; String arrStrings=Arrays.toString(array3); // System.out.println(arrStrings); //从array中创建arraylist ArrayList<String> arrayList=new ArrayList<String>(Arrays.asList(array1)); System.out.println(arrayList); //数组中是否包含某一个值 String a="马超"; if (Arrays.asList(array1).contains(a)) { System.out.println("马超在这里"); } //将数组转成set集合 Set<String> set=new HashSet<String>(Arrays.asList(array2)); System.out.println(set); //将数组转成list集合 List<String> list=new ArrayList<String>(); for (int i = 0; i < array2.length; i++) { list.add(array2[i]); } String[] arrStrings2={"1","2","3"}; List<String > list2=java.util.Arrays.asList(arrStrings2); System.out.println(list2); //Arrays.fill()填充数组 int[] arr3=new int[5]; Arrays.fill(arr3, 10); //将数组全部填充10 for (int i = 0; i < arr3.length; i++) { System.out.println(arr3[i]); } //数组排序 int[] arr4 = {3, 7, 2, 1, 9}; Arrays.sort(arr4); for (int i = 0; i < arr4.length; i++) { System.out.println(arr4[i]); } int[] arr5 = {3, 7, 2, 1, 9,3,45,7,8,8,3,2,65,34,5}; Arrays.sort(arr5, 1, 4); //从第几个到第几个之间的进行排序 for (int i = 0; i < arr5.length; i++) { System.out.println(arr5[i]); } //复制数组 int[] arr6 = {3, 7, 2, 1}; int[] arr7=Arrays.copyOf(arr6, 10); //指定新数组的长度 int[] arr8=Arrays.copyOfRange(arr6, 1, 3); //只复制从索引[1]到索引[3]之间的元素(不包括索引[3]的元素) for (int i = 0; i < arr8.length; i++) { System.out.println(arr8[i]); } //比较两个数组 int[] arr9 = {1, 2, 3, 4,5,6,7,8,9,0}; boolean arr10=Arrays.equals(arr6, arr9); System.out.println(arr10); //去重复 //利用set的特性 int[] arr11 = {1, 2, 3, 4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3}; Set<Integer> set2=new HashSet<Integer>(); for (int i = 0; i < arr11.length; i++) { set2.add(arr11[i]); } System.out.println(set2); int[] arr12 = new int[set2.size()]; int j=0; for (Integer i:set2) { arr12[j++]=i; } System.out.println(Arrays.toString(arr12)); } }
package MyTest01; public class ArrayTest03 { public static void main(String[] args) { int[] arr11 = {10, 2, 3, 4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3}; //计算最大值 int max = arr11[0]; for (int i = 1; i < arr11.length; i++) { if (arr11[i] > max) { max = arr11[i]; } } System.out.println("Max is " + max); //计算最小值 int min = arr11[0]; for (int i = 0; i < arr11.length; i++) { if (arr11[i]<min) { min = arr11[i]; } } System.out.println("Min is " + min); } }
Java中对Array数组的常用操作的更多相关文章
- Java实例 Part4:数组及其常用操作
目录 Part4:数组及其常用操作 Example01:将二维数组的行列交换 Example02:使用选择排序法对数组进行排序 Example03:使用冒泡排序法对数组进行排序 Example04:使 ...
- Java 中的array数组总结之一
数组:是一个将同种类型的数据存储在存储单元中. 可以用三种方式声明数组: 1.数据类型 标识符[]; int mothDays[]; 2.数据类型 标识符[] = new 数据类型[大小]; int ...
- Java中对List集合的常用操作
目录: list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引 ...
- Java中对List集合的常用操作(转)
list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引位置重新 ...
- Js 中对 Json 数组的常用操作
我们首先定义一个json数组对象如下: var persons = [ {name: "tina", age: 14}, {name: "timo", age: ...
- Java中对List集合的常用操作(转载)
目录: list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引 ...
- java 实现往oracle存储过程中传递array数组类型的参数
注:本文来源于 < java 实现往oracle存储过程中传递array数组类型的参数 >最近项目中遇到通过往存储过程传递数组参数的问题, 浪费了N多个小时,终于有点头绪. 具体的代码 ...
- 在Java中怎样把数组转换为ArrayList?
翻译自:How to Convert Array to ArrayList in Java? 本文分析了Stack Overflow上最热门的的一个问题的答案,提问者获得了很多声望点,使得他得到了在S ...
- Java基础-Java中23种设计模式之常用的设计模式
Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...
随机推荐
- PHP基础入门(二)---入门基础知识必备
前言 在上一章中,我们初步了解了PHP的网页基础和PHP的入门基础,今天继续给大家分享更多有关PHP的知识. 理论知识看起来可能比较枯燥一些,但是我们的实践(敲代码)毕竟离不开它. 只有理论与实践相结 ...
- 小程序中通过判断id来删除数据,当数据长度为0时,显示隐藏部分(交流QQ群:604788754)
欢迎加入小程序交流群:本群定期更新在工作种遇到的小知识(交流QQ群:604788754) WXML: <!--遍历循环的数据部分--> <block wx:for="{{d ...
- 小白的python之路11/15 awk 77-78
awk -F指定分隔符 eg下图指定 : 为分隔符,$1 $4 NF表示以分隔符为表准,该行分了几段 $NF表示取最后一段 正则表达式 表示打印第一个开头的用户名awk -F: '/nolog ...
- js中浅拷贝和深拷贝以及深拷贝的实现
前言:2019年的第一篇分享... 一.什么是基本类型值和引用类型值?ECMAScript包括两个不同类型的值:基本数据类型和引用数据类型.基本数据类型指的是简单的数据段,引用数据类型指的是有多个值构 ...
- ES6中var/let/const的区别
let的含义及let与var的区别: let 声明的变量只在它所在的代码块有效: 如下: for (let i = 0; i < 10; i++) { console.log(i); } con ...
- elasticsearch基本使用
elasticsearch 是java对lucence的封装,所以需要事先安装java. 它适用于全文索引,便捷的分布式,主要原理就是倒排索引.一般搜索某个关键字,是通过在一篇篇文章中查找这个关键字, ...
- python简单爬虫 用lxml库解析数据
目标:爬取湖南大学2018年本科招生章程 url:http://admi.hnu.edu.cn/info/1026/2993.htm 页面部分图片: 使用工具: Python3.7 火狐浏览器 PyC ...
- 前端车牌识别SDK算法提取
同行业中,别人标配有的产品我有,别人没有的产品我们也有,如此才能增强竞争力,通过优化创新,前端车牌识别SDK功能,性能上,都是行业NO.1的水平.车牌识别sdk这个用于越来越多人集成了,汽车保有量日益 ...
- C++之 自定义数据类型 枚举、结构体、共用体
1.枚举 枚举类型的声明形式为: enum 枚举类型名 { 变量值列表 }; 变量值列表里都是整型变量,另外不要忘记最后面的分号! 比如,enum weekday { sun, ...
- OO第二单元的总结
三周复三周,一轮又一轮,我似乎已经将OO是为我的生活必须品了.在与同学吐槽者身负-3楼与20楼重任的A电梯君,以及我们都是上一层下两层不用电梯的五号青年的等等欢声笑语中结束了第二轮的OO作业.当然这次 ...