当前位置:网站首页>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; } }
边栏推荐
- MySQL比较运算符IN问题求解
- Is it safe to open a stock account online? I'm a novice, please guide me
- Is the Ren domain name valuable? Is it worth investing? What is the application scope of Ren domain name?
- TIPC protocol
- SQLite modify column type
- Tick Data and Resampling
- spritejs
- How to use ide to automatically sign and debug Hongmeng application
- 函数式接口和方法引用
- [play with FPGA learning 4 in simple terms ----- talk about state machine design]
猜你喜欢
CTF record
ren域名有价值吗?值不值得投资?ren域名的应用范围有哪些?
TIPC Service and Topology Tracking4
【云原生】2.5 Kubernetes 核心实战(下)
Iii. Système de démarrage et d'horloge à puce
数字化转型挂帅复产复工,线上线下全融合重建商业逻辑
TIPC 寻址2
I STM32 development environment, keil5/mdk5.14 installation tutorial (with download link)
【IDEA】使用插件一键逆向生成代码
[play with FPGA learning 2 in simple terms ----- design skills (basic grammar)]
随机推荐
[AGC] how to solve the problem that the local display of event analysis data is inconsistent with that in AGC panel?
C file and folder operation
ImportError: cannot import name ‘Digraph‘ from ‘graphviz‘
spritejs
CentOS8之mysql基本用法
ros gazebo相关包的安装
Indexer in C #
What are the methods of adding elements to arrays in JS
MTK full dump抓取
MySQL比较运算符IN问题求解
ImportError: cannot import name ‘Digraph‘ from ‘graphviz‘
Webauthn - official development document
JS -- take a number randomly from the array every call, and it cannot be the same as the last time
The working day of the month is calculated from the 1st day of each month
js中给数组添加元素的方法有哪些
Jinshanyun - 2023 Summer Internship
tidb-dm报警DM_sync_process_exists_with_error排查
Installation of ROS gazebo related packages
JS——每次调用从数组里面随机取一个数,且不能与上一次为同一个
From the perspective of attack surface, see the practice of zero trust scheme of Xinchuang