Java 数组的基本操作--总结

1. 数组的遍历
2. 数组的填充替换
3. 对数组进行排序
4. 复制数组
5. 数组的查询

数组的遍历

1.直接遍历

int b[][] = new int[][] {{1},{2,3},{4,5,6}};
for(int i=0;i<b.length;i++) {
for(int j=0;j<b[i].length;j++) {
System.out.print(b[i][j]);

2.foreach 语句遍历数组

public class foreach语句遍历二维数组 {

	public static void main(String[] args) {
		int b[][]=new int[][] {{1,2},{3,4}};
		System.out.print("数组中的元素是:\n");
		int i = 0;
		for(int x[]:b) { //外层循环计数变量
			i++;
			int j=0;
			for(int e:x) { //循环遍历每一个数组元素
				j++;
				if(i == b.length && j == x.length) { //判断是否数组的最后一个元素
					System.out.print(e);
				}else 
					System.out.print(e+".");
			}
		}

	}

}

数组的填充与遍历

1.数组的填充

fill(int[] a, int value)
 * a:要进行元素替换的数组
 * value:要存储数组中的所有元素的值
import java.util.Arrays;

/* fill(int[] a, int value)
 * a:要进行元素替换的数组
 * value:要存储数组中的所有元素的值
 */
public class 填充替换数组元素 {

	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.print("第"+i+"个元素:"+arr[i]);
			System.out.print("\n");
		}
		
	}

}

2.数组的替换

*
 * fill(int[] a,int fromlndex , int tolndex ,int value)
 * a:要进行填充的数组
 * formlndex:要使指定值填充的第一个元素的索引
 * tolndex:要是指定值填充的最后一个元素的索引
 * value:要存储在数组所有元素的值
 */
import java.util.Arrays;

/*
 * fill(int[] a,int fromlndex , int tolndex ,int value)
 * a:要进行填充的数组
 * formlndex:要使指定值填充的第一个元素的索引
 * tolndex:要是指定值填充的最后一个元素的索引
 * value:要存储在数组所有元素的值
 */
public class fill函数数组的替换 {

	public static void main(String[] args) {
		int arr[] = new int[]{45,12,2,10};
		Arrays.fill(arr,1,2,8);
		for(int i =0;i<arr.length;i++) {
		System.out.print("第"+i+"个元素:"+arr[i]);	
		System.out.print(" \n");
		}
		//System.out.print(" ");
	}

}

对数组进行排序

/*
 * Arrays类的静态sort方案
 * Arrays.sort(object)
 * Java中的String类型数组的排序算法是根据字典编排顺序排序的,因此数字排在字母前,大写字母排在小写字母前面
 */
import java.util.Arrays;

/*
 * Arrays类的静态sort方案
 * Arrays.sort(object)
 * Java中的String类型数组的排序算法是根据字典编排顺序排序的,因此数字排在字母前,大写字母排在小写字母前面
 */
public class sort数组排序 {

	public static void main(String[] args) {
		int arr[]=new int[] {23,42,12,8};
		Arrays.sort(arr);
		for(int i= 0;i<arr.length;i++) {
			System.out.println(arr[i]);
		}

	}

}

复制数组

/*
 * Arrays类的copyOf()和copyOfRange()方法
 * copyOf(arr,int newlength)
 * newlength 复制后的新数组的长度。如果数组长度大于原数组arr的长度,则用0填充
 * copyOfRang(arr,int formlndex,int tolndex)
 * fromlndex 指定开始复制数组的索引位置
 * tolndex 要复制范围的最后索引位置
 */
import java.util.Arrays;

/*
 * Arrays类的copyOf()和copyOfRange()方法
 * copyOf(arr,int newlength)
 * newlength 复制后的新数组的长度。如果数组长度大于原数组arr的长度,则用0填充
 * copyOfRang(arr,int formlndex,int tolndex)
 * fromlndex 指定开始复制数组的索引位置
 * tolndex 要复制范围的最后索引位置
 */
public class 复制数组 {

	public static void main(String[] args) {
		int arr[] = new int[]{23,42,12,84,10};
		int newarr[] = Arrays.copyOfRange(arr, 0, 3);
		for(int i=0;i<newarr.length;i++) {
			System.out.println(newarr[i]);
		}

	}

}

数组查询

*
 * Arrays 类的 binarySearch()
 * binarySearch(Object[] a,Object Key)
 * a:要搜索的数组
 * key:要搜索的值
 * binarySearch(Object[] a,int fromlndex,int tolndex,Object key)
 * a:要进行检索的值
 * fromlndex:指定范围的开始处索引
 * fromlndex:指定范围的结束处索引
 * key:要搜索的元素
 */
import java.util.Arrays;

/*
 * Arrays 类的 binarySearch()
 * binarySearch(Object[] a,Object Key)
 * a:要搜索的数组
 * key:要搜索的值
 * binarySearch(Object[] a,int fromlndex,int tolndex,Object key)
 * a:要进行检索的值
 * fromlndex:指定范围的开始处索引
 * fromlndex:指定范围的结束处索引
 * key:要搜索的元素
 */
public class 数组的查询 {

	public static void main(String[] args) {
		String str[] = new String[] {"ab","cd","ef","yz"};
		Arrays.sort(str);//将数组进行排序
		int index = Arrays.binarySearch(str,0,2,"cd");
		System.out.println("cd的索引位置是:"+index);

	}

}

数组的排序算法,下一篇编写。。

发布了7 篇原创文章 · 获赞 3 · 访问量 79

猜你喜欢

转载自blog.csdn.net/qq_42724864/article/details/104201600