how2j.cn


工具版本兼容问题
这是一个一维数组, 里面的每一个元素,都是一个基本类型int
int a[] =new int[]{1,2,3,4,5};

这是一个二维数组,里面的每一个元素,都是一个一维数组
所以二维数组又叫数组的数组
int b[][] = new int[][]{
{1,2,3},
{4,5,6},
{7,8,9}
};

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



10分32秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)



步骤 1 : 初始化二维数组   
步骤 2 : 练习-二维数组   
步骤 3 : 答案-二维数组   

步骤 1 :

初始化二维数组

public class HelloWorld { public static void main(String[] args) { //初始化二维数组, int[][] a = new int[2][3]; //有两个一维数组,每个一维数组的长度是3 a[1][2] = 5; //可以直接访问一维数组,因为已经分配了空间 //只分配了二维数组 int[][] b = new int[2][]; //有两个一维数组,每个一维数组的长度暂未分配 b[0] =new int[3]; //必须事先分配长度,才可以访问 b[0][2] = 5; //指定内容的同时,分配空间 int[][] c = new int[][]{ {1,2,4}, {4,5}, {6,7,8,9} }; } }
public class HelloWorld {
	public static void main(String[] args) {
	   //初始化二维数组,
	   int[][] a = new int[2][3]; //有两个一维数组,每个一维数组的长度是3
	   a[1][2] = 5;  //可以直接访问一维数组,因为已经分配了空间
	     
	   //只分配了二维数组
	   int[][] b = new int[2][]; //有两个一维数组,每个一维数组的长度暂未分配
	   b[0]  =new int[3]; //必须事先分配长度,才可以访问
	   b[0][2] = 5;
	   
	   //指定内容的同时,分配空间
	   int[][] c = new int[][]{
			   {1,2,4},
			   {4,5},
			   {6,7,8,9}
	   };

    }
}
步骤 2 :

练习-二维数组

Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
定义一个5X5的二维数组。 然后使用随机数填充该二维数组。
找出这个二维数组里,最大的那个值,并打印出其二维坐标

0-100的 随机整数的获取办法有多种,下面是参考办法之一:

(int) (Math.random() * 100)

Math.random() 会得到一个0-1之间的随机浮点数,然后乘以100,并强转为整型即可。
练习-二维数组
步骤 3 :

答案-二维数组

在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

7分4秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)


public class HelloWorld { public static void main(String[] args) { int a[][] = new int[5][5]; // 初始化这个数组 for (int i = 0; i < a.length; i++) { for (int j = 0; j < a[i].length; j++) { a[i][j] = (int) (Math.random() * 100); } } // 打印这个数组的内容: for (int[] row : a) { for (int each : row) { System.out.print(each + "\t"); } System.out.println(); } int max = -1;// 最大值 // 最大值的坐标 int target_i = -1; int target_j = -1; for (int i = 0; i < a.length; i++) { for (int j = 0; j < a[i].length; j++) { if (a[i][j] > max) { max = a[i][j]; target_i = i; target_j = j; } } } System.out.println("找出来最大的是:" + max); System.out.println("其坐标是[" + target_i + "][" + target_j + "]"); } }


HOW2J公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2019-01-20 作业提交
飞翔浮云



public class test { public static void main(String[] args) { int[][] a = new int[5][5]; int[] b=new int[5]; //赋值 for (int i = 0; i < a.length; i++) { for (int j = 0; j < a[i].length; j++) { if(a[i][j]==0){ a[i][j] = (int) (Math.random() * 100); } } } //比较前 for(int[] value_i:a){ for(int value_j:value_i){ System.out.print(value_j+"\t"); } System.out.println(); } //比较 int tem=0; for(int[] value_i:a){ for(int value_j:value_i){ if(tem<value_j){ tem=value_j; } } } System.out.println("数组最大的元素是:"+tem); } }
public class test {
	public static void main(String[] args) {
		int[][] a = new int[5][5];
		int[] b=new int[5];
		//赋值
		for (int i = 0; i < a.length; i++) {
			for (int j = 0; j < a[i].length; j++) {
				if(a[i][j]==0){
					a[i][j] = (int) (Math.random() * 100);
				}
			}
		}
		//比较前
		for(int[] value_i:a){
			for(int value_j:value_i){
				System.out.print(value_j+"\t");
			}
			System.out.println();
		}
		//比较
		int tem=0;
		for(int[] value_i:a){
			for(int value_j:value_i){
				if(tem<value_j){
					tem=value_j;
				}				
			}
		}
		System.out.println("数组最大的元素是:"+tem);				
			}	
}

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2019-01-15 还行
lanz



/*定义一个5X5的二维数组。 然后使用随机数填充该二维数组。 找出这个二维数组里,最大的那个值,并打印出其二维坐标 */ int[][] a=new int[5][5]; int max=a[0][0]; int x=0; int y=0; for(int j=0;j<a.length;j++){ for (int i = 0; i < a.length; i++) { a[j][i] = (int) (Math.random() * 100); System.out.print(a[j][i]+"\t"); if(max<a[j][i]){ max=a[j][i]; x=j; y=i; } if(i==a.length-1){ System.out.println(); } } } System.out.println("最大值是:"+max); System.out.println("其坐标是:["+x+","+y+"]");
/*定义一个5X5的二维数组。 然后使用随机数填充该二维数组。
		找出这个二维数组里,最大的那个值,并打印出其二维坐标
*/
		
		int[][] a=new int[5][5];
		int max=a[0][0];
		int x=0;
		int y=0;
		for(int j=0;j<a.length;j++){
		for (int i = 0; i < a.length; i++) {
			a[j][i] = (int) (Math.random() * 100);
			System.out.print(a[j][i]+"\t");
			if(max<a[j][i]){
				max=a[j][i];
				x=j;
				y=i;
			}
			if(i==a.length-1){
				System.out.println();
			}	
		}
		}
		System.out.println("最大值是:"+max);
		System.out.println("其坐标是:["+x+","+y+"]");
		

							


1 个答案

lanz 答案时间:2019-01-15
26 93 82 86 41 47 72 97 7 18 63 70 77 96 36 14 82 13 25 25 60 79 23 77 33 最大值是:97 其坐标是:[1,2]




答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2019-01-14 交作业
2018-12-30 交作业
2018-12-25 交作业
2018-12-19 交作业
2018-12-18 作业
2018-12-18 作业
2018-12-14 交作业
2018-12-12 二维数组
2018-12-06 二维数组!
2018-12-06 二维数组!
2018-11-30 答案
2018-11-12 交作业
2018-11-12 二维数组求最大值作业
2018-11-06 我也来试试
2018-10-27 作业
2018-10-26 交作业
2018-10-24 交作业
2018-10-12 交作业
2018-09-27 交作业
2018-09-27 交作业
2018-09-27 作业
2018-09-24 交作业 ,好像有点繁琐
2018-09-24 交作业 2018.9.24
2018-09-11 交作业
2018-09-04 交作业
2018-08-26 交作业
2018-08-25 作业
2018-08-22 足迹~
2018-08-20 交作业
2018-08-18 两个for循环搞定
2018-08-17 交作业
2018-08-15 考虑到二维数组中可能有多个相同最大值时的答案^_^
2018-08-15 答案
2018-08-11 打印5x5二维数组并找到最大值与坐标
2018-08-11 打印5x5二维数组并找到最大值与坐标
2018-07-26 二维数组
2018-07-24 交作业
2018-07-20 交作业
2018-07-20 交作业
2018-07-19 作业进化
2018-07-07 交作业
2018-07-05 交作业
2018-07-05 交作业
2018-07-05 日常作业
2018-07-04 提升下,怎么实现二维数组的排序
2018-06-11 答案
2018-06-11 答案
2018-05-29 二维数组赋值,获取最大值索引,考虑多个最大值
2018-05-29 二维数组最大值索引,考虑出现多次最大值
2018-05-28 交作业
2018-05-28 最简单有效写法
2018-05-25 交作业
2018-05-25 交作业
2018-05-17 假如最大数不止出现了一次
2018-05-16 交作业
2018-05-16 交作业
2018-05-15 交作业啦
2018-05-14 交作业
2018-05-12 作业:最大值和下标
2018-05-11 b[0] =new int[3]; 是什么意思?
2018-05-09 生成二维数组并显示最大值。
2018-05-04 交作业
2018-04-25 作业,数组
2018-04-25 交作业
2018-04-25 简答
2018-04-23 交作业呀交作业
2018-04-21 交作业
2018-04-19 交作业-打卡
2018-04-19 【交作业】二维数组最大值
2018-04-18 作业
2018-04-11 还有人学习吗?作业打卡
2018-04-02 作业打卡
2018-03-31 日常交作业
2018-03-30 这是什么鬼
2018-03-16 交作业之正确答案
2018-03-12 关于练习题简化的答案
2018-03-12 代码和解答
2018-03-08 作业
2018-01-09 简单写的,也许还可以优化
2018-01-03 交作业
2017-12-21 交作业
2017-12-09 如果 题目要求不是 5 * 5 而是 5* 6呢?
2017-12-02 假如二维数组中两数相同且皆为最大值,如何输出两个坐标
2017-11-23 交作业
2017-11-23 答案-左对齐输出数组
2017-11-21 j为什么要小于arr[i].length
2017-11-18 答案-一枚菜鸟
2017-11-02 完成!求指点
2017-10-28 老师,我想比较一下两种代码的区别
2017-10-22 交作业
2017-10-20 二维数组最大值
2017-10-20 交作业
2017-10-03 个人代码
2017-09-29 如果随机得到的数组元素的最大值有两个,怎么获取它的坐标
2017-09-23 交作业
2017-09-20 得到的结果有一次不对的
2017-09-13 输出二维坐标有没有简单的方法
2017-09-13 答案,完美
2017-08-29 几个问题,麻烦站长看见了解答下,其他前辈也请赐教。
2017-08-27 我写的
2017-08-18 二位数组练习题
2017-08-16 【站长可忽略】 抽象出了一些方法,可供参考
2017-08-11 可以说是最丑陋的答案了
2017-07-22 交流一下
2017-07-10 作业
2017-07-06 答案
2017-06-08 交作业
2017-06-07 结果
2017-06-01 交作业
2017-05-14 学习交流
2017-05-04 二维数组求最大值
2017-04-19 二维数组生成 并寻找最大值
2017-03-27 每次写都觉得绕的有点远啊
2017-03-27 答案
2017-02-24 答案
2017-02-08 关于二维数组题目我的答案
2017-01-23 用增强型for循环写二维数组
2016-12-15 做了半个多小时才做出来。。。
2016-12-14 求得最大值 以及 最大出现的次数,需要的看下
2016-12-12 增强循环如何遍历二维数组
2016-12-10 二维数组