当前位置:网站首页>Attribute acquisition method and operation notes of C # multidimensional array
Attribute acquisition method and operation notes of C # multidimensional array
2022-07-02 11:23:00 【chengjl8】
C# Provides various attribute acquisition methods for multidimensional arrays , But its expression is different from our habits , therefore , It also took some brains , I didn't understand it until I wrote some code tests , Now let's share :
1、 One dimensional array
A one-dimensional array is a combination of data with one row and multiple columns , It will be explained in the two-dimensional array later .
2、 Two dimensional array
We define a two-dimensional array as follows :
double[,] array1 = new double[3, 6];//2 Dimension group
Its image structure is as follows , here : dimension =2; The first 1 Dimensions are rows , Here for 3; The second dimension is the number of columns per row , Here for 6.
0 | 1 | 2 | 3 | 4 | 5 | |
The first 0 That's ok | ||||||
The first 1 That's ok | ||||||
The first 2 That's ok |
here , Get the attributes and results of the array with code as follows ( The indexes are all from 0 Start ):
double[,] array1 = new double[3, 6];//2 Dimension group
int a = array1.Rank;// dimension =2
a = array1.GetLength(0);// For the first 0 The number of elements of dimension =3
a = array1.GetLength(1);// For the first 1 The number of elements of dimension =6
a = array1.GetLowerBound(0);// For the first 0 The first element index of the dimension =0
a = array1.GetUpperBound(0);// For the first 0 Index of the last element of the dimension =2
a = array1.GetLowerBound(1);// For the first 0 The first element index of the dimension =0
a = array1.GetUpperBound(1);// For the first 1 Index of the last element of the dimension =5
a = array1.Length;// Get the total number of elements =18
3、 Three dimensional array
We define a three-dimensional array as follows :
double[,,] array2 = new double[2, 3, 6];//3 Dimension group
Its image structure is as follows , here : dimension =3; The first 1 Three dimensional layers , Here for 2, The first 2 Dimensions are rows , Here for 3; The first 3 The first dimension is the column of each row , Here for 6.
double[,,] array2 = new double[2, 3, 6];//3 Dimension group
a = array2.Rank;// dimension =3
a = array2.GetLength(0);// For the first 0 The number of elements of dimension =2
a = array2.GetLength(1);// For the first 1 The number of elements of dimension =3
a = array2.GetLength(2);// For the first 2 The number of elements of dimension =6
a = array2.Length;// Get the total number of elements =36
4、 More dimensions
So do more dimensions , It's just adding a few more commas to the definition [,,,,,,,], But be careful : The number of elements increases exponentially .
5、 Attention to operation
- Array operation is much faster than list , If possible , Just use this array structure .
- The efficient method of traversing an array is multi-layer for loop , The higher the dimension number, the more internal circulation ( See below ), On the contrary, the efficiency decreases :
for(int i = 0; i < 3; i++) { for(int j = 0; j < 6; j++) { array1[i, j] = -1; } }
边栏推荐
- flink二开,实现了个 batch lookup join(附源码)
- Verilog 和VHDL有符号数和无符号数相关运算
- Tick Data and Resampling
- TIPC Cluster5
- Verilog and VHDL signed and unsigned number correlation operations
- Installation of ROS gazebo related packages
- Resources读取2d纹理 转换为png格式
- Is it safe to open a stock account online? I'm a novice, please guide me
- Functional interfaces and method references
- 【IDEA】使用插件一键逆向生成代码
猜你喜欢
2022年4月17日五心红娘团队收获双份喜报
从攻击面视角,看信创零信任方案实践
由粒子加速器产生的反中子形成的白洞
三.芯片启动和时钟系统
PKG package manager usage instance in FreeBSD
Flick two open, realized a batch lookup join (with source code)
Implement custom drawer component in quick application
【IDEA】使用插件一键逆向生成代码
[AGC] build service 3 - authentication service example
Iii. Système de démarrage et d'horloge à puce
随机推荐
The difference between SQL left join main table restrictions written after on and where
[cloud native] 2.5 kubernetes core practice (Part 2)
八大排序汇总
SSRF
TIPC协议
Basic usage of MySQL in centos8
C file and folder operation
PLC-Recorder快速监控多个PLC位的技巧
三.芯片启动和时钟系统
TIPC introduction 1
2022年4月17日五心红娘团队收获双份喜报
程序员成长第六篇:如何选择公司?
Indexer in C #
Luogu p5536 [xr-3] core city (greed + tree DP looking for the center of the tree)
Special topic of binary tree -- [deep base 16. Example 7] ordinary binary tree (simplified version) (multiset seeks the precursor and subsequent sentry Art)
ros gazebo相关包的安装
Tick Data and Resampling
PKG package manager usage instance in FreeBSD
Tick Data and Resampling
Thanos Receiver