A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Piaoyu 中级黑马   /  2015-1-12 08:52  /  921 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看完毕老师的二维数组,对二维数组的内存结构等,明白了,但是如何真正的使用到应用和示例中,还是不会。大家有使用二维数组的实例吗,求帮助。

2 个回复

倒序浏览
二维数组一般不用
这里有个螺旋矩阵的  你可以看下


  1. /*
  2.   输出 n=5 的螺旋方阵
  3. 1  2  3  4  5
  4. 16 17 18 19 6
  5. 15 24 25 20 7
  6. 14 23 22 21 8
  7. 13 12 11 10 9  
  8. */
  9. public class Test {
  10.         public static void main(String[] args) {

  11.                 int n = 5;
  12.                 int arr[][] = new int[n][n];
  13.                 int i, j ;
  14.                 int k = 0;
  15.                 for (i = 0; i < n; i++) {
  16.                         // 顶边,从左到右,行不变列变
  17.                         for (j = i; j <= n - i - 1; j++)
  18.                                 arr[i][j] = ++k;// 输出1、2、3、4、13、14

  19.                         // 右边,从上到下,行变列不变
  20.                         for (j = i + 1; j <= n - i - 1; j++)
  21.                                 arr[j][n - i - 1] = ++k; // 输出5、6、7、15

  22.                         // 底边,从右到左,行不变列变
  23.                         for (j = n - i - 2; j >= i; j--)
  24.                                 arr[n - i - 1][j] = ++k; // 输出8、9、10、16

  25.                         // 左边,从下到上,行变列不变
  26.                         for (j = n - i - 2; j >= i + 1; j--)
  27.                                 arr[j][i] = ++k; // 输出11、12
  28.                 }
  29.                 for (i = 0; i < n; i++) {
  30.                         for (j = 0; j < n; j++)
  31.                                 System.out.print(arr[i][j] + "\t");
  32.                         System.out.println("");
  33.                 }
  34.         }
  35. }
复制代码
回复 使用道具 举报
李增宽 发表于 2015-1-12 22:08
二维数组一般不用
这里有个螺旋矩阵的  你可以看下

谢谢了:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马