Java数组的基本操作

一、遍历数组

1、使用for语句遍历二维数组,示例如下

public class forArr {
	public static void main(String args[]) {
		int b[][] = new int[][] {{1},{2,3},{4,5,6}};
		for(int k =0;k<b.length;k++) {
			for(int j=0;j<b[k].length;j++) {
				System.out.println(b[k][j]);
			}
		}
	}
}
/*输出结果如下:
1
2
3
4
5
6
*/

2、使用foreach语句遍历二维数组,示例如下:

public class foreachArr {
	public static void main(String args[]) {
		int arr[][]=new int[][]{{1,2},{3,4}};
		System.out.println("数组中的元素是:");
		for(int x[]:arr) {
			for(int y:x) {
				if(y==x.length) {
					System.out.print(y);
				}
				else {
					System.out.print(y+'、');
				}
			}
		}
	}
}

/*输出结果如下:
数组中的元素是:
1、2、3、4
*/

二、填充替换数组元素

1、fill(int[] a,int value)

该方法可将指定的int值分配给int类型数组的每个元素

语法如下:

fill(int[] a,int value);
//a:要进行元素替换的数组
//value:要存储数组中所有元素的值

示例如下:

import java.util.Arrays;

public class fillTest1 {
	public static void main(String args[]) {
		int arr[] = new int[5];
		Arrays.fill(arr, 8);
		for(int i=0;i<arr.length;i++) {
			System.out.println("第"+i+"个元素是:"+arr[i]);
		}
	}
}
/*输出结果如下:
第0个元素是:8
第1个元素是:8
第2个元素是:8
第3个元素是:8
第4个元素是:8
*/

2、fill(int a[],int fromIndex,int toIndex,int value)

该方法将指定的Int值分配给Int类型数组指定范围中的每个元素,formIndex~toIndex

语法如下:

fill(int a[],int fromIndex,int toIndex,int value)
//a:要进行填充的数组
//fromIndex:第一个需要填充的元素的索引(包括)
//toIndex:最后一个需要填充的元素的索引(不包括)

示例如下:

import java.util.Arrays;

public class fillTest2 {
	public static void main(String args[]) {
		int arr[] = new int[] {45,12,2,11};
		Arrays.fill(arr, 1,2,8);
		for(int i=0;i<arr.length;i++) {
			System.out.println("第"+i+"个元素是:"+arr[i]);
		}
	}
}
/*输出结果如下:
第0个元素是:45
第1个元素是:8
第2个元素是:2
第3个元素是:11
*/

三、对数组进行排序

使用Arrays.sort(object)可以对数组进行排序,示例如下:

import java.util.Arrays;

public class sortTest {
	public static void main(String args[]) {
		int arr[] = new int[] {123,21,31,2,12};
		Arrays.sort(arr);
		for(int i=0;i<arr.length;i++) {
			System.out.println("第"+i+"个元素是:"+arr[i]);
		}
	}
}
/*输出结果如下:
第0个元素是:2
第1个元素是:12
第2个元素是:21
第3个元素是:31
第4个元素是:123
*/

四、复制数组

1、copyOf()

该方法提供了多种重载形式

语法如下:

copyOf(arr,newlength)
//arr:要进行复制的数组
//newlength:int类型常量,指复制后的新数组长度

示例如下:

import java.util.Arrays;

public class copyOfTest {
	public static void main(String args[]) {
		int arr[] = new int[] {12,3,21,322,333};
		int newarr[] = Arrays.copyOf(arr, 5);
		for(int i=0;i<newarr.length;i++) {
			System.out.println(newarr[i]);
		}
	}
}
/*输出结果如下:
12
3
21
322
333
*/

2、copyOfRange()

语法如下:

copyOfRange(arr,int formIndex,int toIndex);
//arr:要进行复制的数组对象
//formIndex:指定开始复制数组的索引位置
//toIndex:要复制范围的最后索引位置

示例如下:

import java.util.Arrays;

public class copyOfRangeTest {
	public static void main(String args[]) {
		int arr[] = new int[] {1,2,3,4,5,6,7};
		int newarr[] = Arrays.copyOfRange(arr, 0, 3);
		for(int i=0;i<newarr.length;i++) {
			System.out.println(newarr[i]);
		}
	}
}
/*输出结果如下:
1
2
3
*/

五、数组查询

1、binnarySearch()

语法如下:

binarySearch(Object[] a,Object key);
//a:要搜索的数组
//key:要搜索的值

示例如下:

import java.util.Arrays;

public class binarySearchTest {
	public static void main(String args[]) {
		int arr[] = new int[] {1,2,3,21,33};
		Arrays.sort(arr);
		int index = Arrays.binarySearch(arr, 3);
		System.out.println("3的位置索引为:"+index);
	}
}
/*输出结果如下:
3的位置索引为:2
*/

2、binarySearch(Object[] a,int fromIndex,int toIndex,Object key)

语法如下:
 

binarySearch(Object[] a,int fromIndex,int toIndex,Object key)
//a:要进行索引的数组
//fromIndex:指定范围的开始处索引(包含)
//toIndex:指定范围的结束处索引(不包含)
//key:要搜索的元素

示例如下:

import java.util.Arrays;

public class binarySearchTest2 {
	public static void main(String args[]) {
		String str[] = new String[] {"a","b","f","c","d"};
		Arrays.sort(str);
		int index = Arrays.binarySearch(str, 0,3,"c");
		System.out.println("c的位置索引为:"+index);
	}
}
/*输出结果如下:
c的位置索引为:2
*/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值