内容简介:翻译自:https://stackoverflow.com/questions/17358139/getupperbound-and-getlowerbound-function-for-array
任何人都可以告诉这两个功能有什么作用?它们采用一个整数参数,它被称为维度.但是这个整数的值如何改变输出?
下面是我跑的一个例子.
int[, ,] intMyArr = {{{ 7, 1, 3, 4 }, { 2, 9, 6, 5 } }, { { 7, 1, 3, 4 }, { 2, 9, 6, 5 }}}; Console.WriteLine(intMyArr.GetUpperBound(0)); // Output is 1 Console.WriteLine(intMyArr.GetUpperBound(1)); // Output is 1 Console.WriteLine(intMyArr.GetUpperBound(2)); // Output is 3 Console.WriteLine(intMyArr.GetLowerBound(0)); // Output is 0 Console.WriteLine(intMyArr.GetLowerBound(1)); // Output is 0 Console.WriteLine(intMyArr.GetLowerBound(2)); // Output is 0
知道为什么GetLowerBound()总是返回0?如果这总是返回0那么我们为什么
需要调用这个方法吗?
可能是一些例子让你明确这个话题
我们使用GetUpperBound()来找出给定维度的数组的上限,
像那样:
int[,,] A = new int[7, 9, 11]; // Returns 6: 0th dimension has 7 items, and so upper bound is 7 - 1 = 6; int upper0 = A.GetUpperBound(0); // Returns 8: 0th dimension has 7 items, 1st - 9 and so upper bound is 9 - 1 = 8; int upper1 = A.GetUpperBound(1); // Returns 10: 0th dimension has 7 items, 1st - 9, 2nd - 11 and so upper bound is 11 - 1 = 10; int upper2 = A.GetUpperBound(2);
通常,GetLowerBound()返回0,因为默认情况下数组从零开始,
但在极少数情况下,他们不是:
// A is [17..21] array: 5 items starting from 17 Array A = Array.CreateInstance(typeof(int), new int[] { 5 }, new int[] { 17 }); // Returns 17 int lower = A.GetLowerBound(0); // Returns 21 int upper = A.GetUpperBound(0);
使用GetLowerBound和GetUpperBound的典型循环是
int[] A = ... for(int i = A.GetLowerBound(0); i <= A.GetUpperBound(0); ++i) { int item = A[i]; ... } // ... or multidimension int[,,] A = ...; for (int i = A.GetLowerBound(0); i <= A.GetUpperBound(0); ++i) for (int j = A.GetLowerBound(1); j <= A.GetUpperBound(1); ++j) for (int k = A.GetLowerBound(2); k <= A.GetUpperBound(2); ++k) { int item = A[i, j, k]; ... }
翻译自:https://stackoverflow.com/questions/17358139/getupperbound-and-getlowerbound-function-for-array
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 函数式编程之数组的函数式编程
- 巧用 PHP 数组函数
- C函数中返回字符数组
- javascript数组常用函数与实战总结
- python – 如何从numpy数组中确定什么是概率分布函数?
- PHP代码篇(二)-- array_column函数将二维数组格式化成固定格式的一维数组,及优化查询方法
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
iBATIS实战
(加)Clinton Begin、(加)Brandon Goodin、(加)Larry Meadors / 叶俊 / 人民邮电出版社 / 2008-5 / 45.00元
《图灵程序设计丛书•Java系列•iBATIS in Action iBATIS实战》是讲述iBATIS框架的权威著作。书中既详实地介绍了iBATIS的设计理念和基础知识,也讨论了动态SQL、高速缓存、DAD框架等高级主题,还讲解了iBATIS在实际开发中的应用。《图灵程序设计丛书•Java系列•iBATIS in Action iBATIS实战》的最后给出了一个设计优雅、层次清晰的示例程序JGa......一起来看看 《iBATIS实战》 这本书的介绍吧!