Java第04章-二维数组及Arrays类

35 篇文章 1 订阅

目录

Arrays类

Arrays.sort(数组名):

Arrays.copyOf(数组名;长度):

 Arrays.fill(数组名 ; 值):

Arrays.binarySearch(查找的数组名称,你想要查找的值):

Arrays.toString(数组名):

Arrays.equals(数组名1 ; 数组名2):

二维数组

二维数组声明

分配空间

赋值


Arrays类

Arrays.sort(数组名):

        对数组进行升序排序。

	public static void main(String[] args) {
		//Arrays.sort(数组名):对数组进行升序排序
		int[] num01 = {40,76,34,55,83,19};
		
		//输出数组排序前的值
		System.out.println("----------排序前----------");
		for (int i = 0; i < num01.length; i++) {
			System.out.print(num01[i] + "  ");
		}
		System.out.println();
		
		//对数组进行升序排序
		Arrays.sort(num01);
		
		//输出数组排序后的值
		System.out.println("----------排序后----------");
		for (int i = 0; i < num01.length; i++) {
			System.out.print(num01[i] + "  ");
		}
		System.out.println();
	}

60fa0d6f9a034452be3e8f902dd531ae.png


Arrays.copyOf(数组名;长度):

        复制数组中指定长度的值。

	public static void main(String[] args) {
		// Arrays.copyOf(数组名;长度):复制数组中指定长度的值。
		
		char[] ch = {'a','b','c','d','e','f'};
		
		//复制数组中指定长度的值。
		char[] ch01 = Arrays.copyOf(ch, 4);
		
		//数组ch中的所有值
		System.out.println("---数组ch的所有值---");
		for (int i = 0; i < ch.length; i++) {
			System.out.print(ch[i] + "  ");
		}
		System.out.println();
		
		//数组ch01的所有值
		System.out.println("---数组ch01的所有值---");
		for (int i = 0; i < ch01.length; i++) {
			System.out.print(ch[i] + "  ");
		}
		System.out.println();
	}

1f0c25b83d354bf9aefa5791af7acb3f.png


 Arrays.fill(数组名 ; 值):

将数组中所有的值转换为指定的值。

	public static void main(String[] args) {
		// Arrays.fill(数组名 ; 值):将数组中所有的值转换为指定的值。
		int[] num = {10,20,30,40,50,60};
		
		//输出转换前的数组
		System.out.println("---转换前的数组---");
		for (int i = 0; i < num.length; i++) {
			System.out.print(num[i] + "  ");
		}
		System.out.println();
		
		//将数组中所有的值转换666。
		Arrays.fill(num, 666);
		
		//输出转换后的数组
		System.out.println("---转换后的数组---");
		for (int i = 0; i < num.length; i++) {
			System.out.print(num[i] + "  ");
		}
	}

ebe626082cde49d1b5d98280f4e1b589.png


Arrays.binarySearch(查找的数组名称,你想要查找的值):

在指定的数组中查找你要找的数据,返回这个数据的下标,如果找不到这个值,返回一个负值。使用这个方法之前,要确保数组进行了排序,否则不能保证查询结果的正确性

	public static void main(String[] args) {
		/*
		 *  Arrays.binarySearch(查找的数组名称,你想要查找的值):
		 *  在指定的数组中查找你要找的数据,返回这个数据的下标,
		 *  如果找不到这个值,返回一个负值。
		 *  使用这个方法之前,要确保数组进行了排序,否则不能保证查询结果的正确性
		 */
				int[] number = { 11, 55, 69, 34, 78, 16, 84 };
				
				//对数组进行排序
				Arrays.sort(number);
				
				System.out.println("---数组排序后的值---");
				for (int i = 0; i < number.length; i++) {
					System.out.print(number[i] + "  ");
				}
				System.out.println();

				//查找元素下标
				int index = Arrays.binarySearch(number, 78);
				System.out.println("你要查找的数据下标:" + index);
	}

b9715db0ba45437a85120d80bc87f5fe.png


Arrays.toString(数组名):

将数组转换为字符串。

	public static void main(String[] args) {
		// Arrays.toString(数组名):将数组转换为字符串。
		int[] num = {10,20,30,40,50,60};
		
		//输出num数组数组
		System.out.println("---num数组---");
		for (int i = 0; i < num.length; i++) {
			System.out.print(num[i] + "  ");
		}
		System.out.println();
		
		//将数组转换为字符串。
		String str = Arrays.toString(num);
		
		//输出字符串数组
		System.out.println("---num数组转换为字符串数组---");
		System.out.println(str);	
	}

346dd0ee38314a518293da4e7cd253d3.png


Arrays.equals(数组名1 ; 数组名2):

比较两个数组中的数据元素对应位置的值是否相同;返回值为boolean,如果两个数组相同,返回值为“true”;否则返回值为“false”。

	public static void main(String[] args) {
		/*
		 * Arrays.equals(数组名1 ; 数组名2):
		 * 比较两个数组中的数据元素对应位置的值是否相同;
		 * 返回值为boolean,如果两个数组相同,返回值为“true”;否则返回值为“false”。
		 */
		int[] num01 = {10,20,30,40,50,60};
		int[] num02 = {10,20,30,40,50,60};
		int[] num03 = {100,20,30,40,50,60};
		
		//比较两个数组中的数据元素对应位置的值是否相同
		boolean b = Arrays.equals(num01, num02);
		boolean bq = Arrays.equals(num01, num03);
		
		//输出比较结果 
		System.out.println("num01数组与num02数组是否相同:" + b);
		System.out.println("num01数组与num03数组是否相同:" + bq);
	}

ff4ceda350754a689e95dc5b9c0a8899.png


二维数组

二位数组可以看成是以为一维数组,二位数组里的数据元素是一维数组。

二维数组声明

        语法:数据类型 [ ][ ]    标识符(数组名);或者   数据类型    标识符(数组名)[ ][ ];

         //声明int数据类型的二维数组       
        int[][] num;
        //声明String数据类型的二维数组
		String[][] str;
        //声明char数据类型的二维数组
		char[][] ch;
        //声明double数据类型的二维数组
		double[][] dle;

分配空间

        语法:

        标识符(数组名) = new 数据类型[长度][长度]; 或 标识符(数组名) = new 数据类型[长度][];

        分配内存空间是第一个[ ]里的长度必须要写,第二个[ ]里的长度可以省略不写。

        // num是一个由3行一维数组组成,每行一维数组可存储5个数据元素
        num = new int[3][5];
        // String是一个由2行一维数组组成,每行一维数组可存储3个数据元素
		str = new String[2][3];
        // char是一个由4行一维数组组成,每行一维数组可存储5个数据元素
		ch = new char[4][5];
        // double是一个由1行一维数组组成,每行一维数组可存储2个数据元素
		dle = new double[1][2];

赋值

        语法: 标识符(数组名) 下标][下标] = 数据;

    //给num数组部分赋值
    num[0][0] = 10;
    num[0][2] = 20;
    //给str数组部分赋值
    str[0][0] = "Hwllo";
    str[0][1] = "Java";
    //给ch数组部分赋值
    ch[0][0] = 'a';
    ch[0][1] = 'b';
    //给dle数组部分赋值
    dle[0][0] = 10.0;
    dle[0][1] = 100.0;

操作数据

        语法:标识符(数组名)[下标][下标]


    System.out.println(num[0][0]);
    System.out.println(num[0][1]);

    System.out.println(str[0][0]);
    System.out.println(str[0][1]);

    System.out.println(ch[0][0]);
    System.out.println(ch[0][1]);

    System.out.println(dle[0][0]);
    System.out.println(dle[0][1]);

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值