java环形打印二维数组
2016-01-05 15:53
609 查看
环形打印二维数组,比如{{1,2,3},{4,5,6},{7,8,9}} ,输出为1,2,3,6,9,8,7,4,5
public class Test { public void say(int[][] a, int flag, int i, int j, int beg_i, int end_i, int beg_j, int end_j) { System.out.println("now:flag=" + flag + ",i=" + i + ",j=" + j + ",beg_i=" + beg_i + ",end_i=" + end_i + ",beg_j=" + beg_j + ",end_j=" + end_j); if (beg_i > i || beg_j > j || i > end_i || j > end_j) { return; } if (beg_i == end_i && beg_j == end_j) { System.out.println(a[i][j]); return; } System.out.println(a[i][j]); switch (flag) { case 1: if (isok(j, end_j)) { flag = 2; beg_i++; i++; } else { j++; } break; case 2: if (isok(i, end_i)) { flag = 3; end_j--; j--; } else { i++; } break; case 3: if (isok(j, beg_j)) { flag = 4; end_i--; i--; } else { j--; } break; case 4: if (isok(i, beg_i)) { flag = 1; beg_j++; j++; } else { i--; } break; default: break; } say(a, flag, i, j, beg_i, end_i, beg_j, end_j); } public boolean isok(int k, int end) { if (k == end) { return true; } return false; } public static void main(String[] args) { int[][] a1 = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; int[][] a2 = { { 1, 2, 3 } }; int[][] a3 = { { 1, 2 }, { 4, 5 }, { 7, 8 } }; int[][] a4 = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 }, { 13, 14, 15, 16 } }; Test t = new Test(); // t.say(a1, 1, 0, 0, 0, 2, 0, 2); // System.out.println(""); t.say(a2, 1, 0, 0, 0, 0, 0, 2); // System.out.println(""); // t.say(a3, 1, 0, 0, 0, 2,0, 1); // t.say(a4, 1, 0, 0, 0, 3,0, 3); } }
相关文章推荐
- spring整合hibernate时lazy加载失败问题
- 【第三章】 DI 之 3.4 Bean的作用域 ——跟我学spring3
- myeclipse开启后卡死、building workspace缓慢 问题解决
- java list<integer>一组不连续的数字进行每10个一组分组,要求各组元素之和差值最小。list%10>=5的单独算一组,否则归并到任意一组。
- cxf+spring发布webservice和调用
- Java 生成本文文件的时候,Dos格式转成Unix格式
- 大文件之Java RandomAccessFile用法
- zookeeper 启动报错 JAVA_HOME is not set
- 详细讲解JAVA中的IO流
- 《thinking-in-java》读书笔记-第15章-泛型(一)
- 从头认识java-16.1 文件目录列表(File类的list())
- 注释驱动的 Spring cache 缓存介绍
- Java处理GMT时间和UTC时间
- 自定义Spring标签
- Intellij idea jsp web cannot resolve method getParameter(java.lang.String)
- The Java Programming Language4th读书笔记-第十三章 字符串与正则表达式
- 有关打包成可执行jar包后引用jar包中配置文件问题
- CXF、Spring整合的SOAP Web Service服务端
- Java 8 Lambda表达式探险
- JavaMail创建邮件和发送邮件