• 锯齿数组


    锯齿数组

    二维数组的大小是矩形的,例如3×3个元素。而锯齿数组的大小设置是比较灵活的,在锯齿数组中,每一行都可以有不同的大小。

    图5-4比较了有3×3个元素的二维数组和锯齿数组。图中的锯齿数组有3行,第一行有2个元素,第二行有6个元素,第三行有3个元素。

     
    图  5-4

    在声明锯齿数组时,要依次放置开闭括号。在初始化锯齿数组时,先设置该数组包含的行数。定义各行中元素个数的第二个括号设置为空,因为这类数组的每一行包含不同的元素数。之后,为每一行指定行中的元素个数:

    int[][] jagged = new int[3][];
    jagged[0] = new int[2] {1, 2};
    jagged[1] = new int[6] {3, 4, 5, 6, 7, 8};
    jagged[2] = new int[3] {9, 10, 11};

    迭代锯齿数组中所有元素的代码可以放在嵌套的for循环中。在外层的for循环中,迭代每一行,内层的for循环迭代一行中的每个元素:

    for ( int row = 0; row < jagged.Length; row++)
    {
    for ( int element = 0; element <jagged[row].Length; element++)
    {
    Console.WriteLine("row: {0}, element: [1], value: {2}",
    row, element, <jagged[row].[element]);
    }
    }

    该迭代显示了所有的行和每一行中的各个元素:

    row: 0, element: 0, value: 1
    row: 0, element: 1, value: 2
    row: 1, element: 0, value: 3
    row: 1, element: 1, value: 4
    row: 1, element: 2, value: 5
    row: 1, element: 3, value: 6
    row: 1, element: 4, value: 7
    row: 1, element: 5, value: 8
    row: 2, element: 1, value: 9
    row: 2, element: 2, value: 10
    row: 2, element: 3, value: 11
  • 相关阅读:
    linux fork()
    sibling call
    linux进程状态(转)
    Linux exec 类函数
    linux中的信号机制及原理分析
    操作数栈
    make 编译常用命令保存警告及错误信息
    wait()/waitpid()系统调用
    动态共享对象的装载时重定位(转)
    博客园markdown上传本地文件及图片
  • 原文地址:https://www.cnblogs.com/zcwvictor-2012/p/3707846.html
Copyright © 2020-2023  润新知