使用java将一个二维数组顺时针输出
Java  /  管理员 发布于 8年前   230
目标:
将一个二维数组按顺时针输出。
(推荐教程:java入门)
代码实现如下:
public class 顺时针输出二维矩阵 {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubint[][]arr={ {1,2,2,3}, {4,5,4,6}, {7,8,6,9}, {1,2,3,4} };int k=0;for(int i = 0; i < arr.length;i++){for(int j = 0;j < arr[0].length;j++){k++;System.out.print(arr[i][j]+" ");if(k % 4 == 0){System.out.println("");}}}System.out.println("");System.out.println(arr[0].length);//列数System.out.println(arr.length);//行数print(arr);}static void print (int[][]arr){int leftUpRow = 0;//最左行int leftUpCol = 0;//最左列int rightDownRow = arr.length-1;//最右列int rightDownCol = arr[0].length-1;//最右列while(leftUpRow <= rightDownRow && leftUpCol <= rightDownCol){int row = leftUpRow, col = leftUpCol;//矩阵的第一行,此时行不变,列++while(col <= rightDownCol){System.out.print(arr[row][col++]+" ");}//矩阵右边第一列 此时行++,列不变//将 col,row 恢复col = rightDownCol;row++;while(row <= rightDownRow){System.out.print(arr[row++][col]+" ");}//矩阵的最下面一行 此时 行不变 列--//还需要恢复 col row 的值row = rightDownRow;col--;while(col >= leftUpCol){System.out.print(arr[row][col--]+" ");}//矩阵最左边一列,此时行--,列不变//继续恢复 col row的值col = leftUpCol;row--;while(row > leftUpRow){System.out.print(arr[row--][col]+" ");}leftUpRow++;leftUpCol++;rightDownRow--;rightDownCol--;}}}
输出结果:
1 2 2 3 4 5 4 6 7 8 6 9 1 2 3 4 1 2 2 3 6 9 4 3 2 1 7 4 5 4 6 8
相关视频教程推荐:java视频
以上就是使用java将一个二维数组顺时针输出的详细内容,更多请关注其它相关文章!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号