您的位置:首页 > 编程语言 > Java开发

Java中对Array数组的常用操作

2016-07-12 21:17 567 查看
目录:

声明数组;

初始化数组;

查看数组长度;

遍历数组;

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);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: