java(二维数组定义及使用)

二维数组

定义 : 二维数组其实是一位数组的嵌套(每一行看做一个内层的一维数组)

格式:

数据类型[][] 数组名;

初始化的两种方式:

​ 1.动态初始化

数据类型[][] 数组名 = new 数据类型[一维的长度][二维的长度];

//创建整数类型的数组
int[][] arr1=new int[2][3];
		//根据索引添加原数
		arr1[0][0] = 1;
		arr1[0][1] = 2;
		arr1[0][2] = 3;
		arr1[1][0] = 4;
		arr1[1][1] = 5;
		arr1[1][2] = 6;
		//以字符串形式打印
		System.out.println(Arrays.deepToString(arr1));

数据类型[][] 数组名 = new 数据类型[一维的长度][];

		//创建浮点类型的数组
		double[][] arr2=new double[2][];
		//指定二维的长度
		arr2[0] = new double[3];
		//指定二维的内容
		arr2[1] = new double[]{4,5};
		//为一维添加元素
		arr2[0][0] = 1;
		arr2[0][1] = 2;
		arr2[0][2] = 3;
		//以字符串形式打印
		System.out.println(Arrays.deepToString(arr2));

2.静态初始化:
数据类型[][] 数组名 = new 数据类型[][]{{‘a’,‘b’},{‘c’,‘d’,‘e’},{‘f’}};

		//创建字符型数组
		char[][] arr3 = new char[][]{{'a','b'},{'c','d','e'},{'f'}};
		System.out.println(Arrays.deepToString(arr3));
		//创建字符串数组
		String[][] arr4= {{"你好","Java"},{"哈哈哈"}};
		System.out.println(Arrays.deepToString(arr4));

遍历
1.for…each嵌套for…each

for(char[] ch:arr3){
	for(char c: ch){
		System.out.println(c);
	}
}

2.for嵌套for

for(int i=0 ; i<= arr.lenght-1 ; i++){
	for(String s: arr [ i ] ){
		System.out.println(s);
	}
}

Arrays 操作数组工具类,静态工厂
常用方法

		//创建数组
		String[][] arr = new String[][]{{"第一个果子","第二个果子"},{"第三个果子","第四个果子"},{"第五个果子"}}
		//deepToString()多维数组以字符串的形式打印内容
		//ToString() 一维数组以字符串的形式打印内容
		//deepEquals()多维数组比较内容是否相等
		//equals() 一维数组比较内容是否相等
		//以字符串形式打印
	    System.out.println(Arrays.deepToString(arr));
		
		//创建int类型数组
		int[] arr2=new int[]{3,2,1,4,5,9,7,8,6};
		//fill(数组,数据值) 填充
		//Arrays.fill(arr2, 0);//将arr2中所有内容填充为0
		//fill(数组,起始索引,结束索引,数据值)  结束索引不包含
		//Arrays.fill(arr2,3,5, 0);//将arr2中索引3到5之间内容填充为0
		
		//sort() 排序 默认升序,对字符|字符串,根据Unicode表中字符代表的值进行排序
		Arrays.sort(arr2);
		System.out.println(Arrays.toString(arr2));
		
		//static char[] copyOf(char[] original, int newLength)  拷贝,截取,填充
		System.out.println(Arrays.toString(Arrays.copyOf(arr3, 3))); 
		System.out.println(Arrays.toString(Arrays.copyOf(arr3, 5))); 
		System.out.println(Arrays.toString(Arrays.copyOf(arr3, 10))); 
		//static char[] copyOfRange(char[] original, int from, int to)  结束索引不包含  将指定数组的指定范围复制到一个新数组。 
		System.out.println(Arrays.toString(Arrays.copyOfRange(arr3, 1,3))); 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值