我已经有一些我已经工作的代码,但是我觉得我是以非常钝的方式做的.
我有一个固定大小的13个元素数组.该数组从SQL表填充.如果给出一个数字,我想知道该数字属于哪两个数组索引.
例如:如果我的数字是500,我有以下元素:-500,-400,-255,-89,77,243,409,575,741,907,1073,1500,2000
...... 500将在元素6和7之间.(409和575)
我已经使用IF语句编写了一个相当强力的方法,代码如下.我基本上创建了第二个数组,并使用IF语句来检查第一个数组的数字.注意 - 我忽略了数字大于max或min数组的情况.我搜索了一个可以在索引之间搜索无法获得的数组方法.关于如何更有效地做到这一点的任何想法?谢谢.
int[] deviations = new int[13] { -500, -400, -255, -89, 77, 243, 409, 575, 741, 907, 1073, 1500, 2000 };
int[] arrayCheck = new int[12];
Int64 num = 500;
Console.WriteLine("The number is: {0}", num);
if ((num >= deviations[0]) && (num < deviations[1]))
{arrayCheck[0] = 1;}
else { arrayCheck[0] = 0;}
if ((num >= deviations[1]) && (num < deviations[2]))
{arrayCheck[1] = 1;}
else { arrayCheck[1] = 0;}
if ((num >= deviations[2]) && (num …
Run Code Online (Sandbox Code Playgroud)