配列を参照するときは0から始まりますが、array.lengthは0から始まるか、1から始まるのですか?C#はarray.lengthを0から開始しますか?
配列のサイズを10に指定すると、0-9が参照されるため、array.lengthの意味は0-9ですか?
私はランダムに生成された数の最大サイズとしてArray.lengthと使用していますので、求めているが、私はここでは、この
randomArrayPointer = randomIntNum(0 , (posPercents.Length - 1)); //generates a random number that fits the arrays range
if(randomArrayPointer < posPercents.Length) //ensures the integer is less than the length of the array
{
return (posPercents [ randomArrayPointer ]);
}
else
{
return (posPercents [ 0 ]);
}
ようにそれをやっているが、私の方法randomIntNumber(I +1にありますランダム()の入力として1〜10を指定する際の最大は、それは私に0-9間の数)を与えるため
public static int randomIntNum(int min , int max)
{
if(max != 1 & (max != (min + 1))) //if max isn't 1 and max isn't the minimum + 1
{
max = max - 1; //remove 1, this corrects the random generator so that the parameters sent don't need adjusting
}
int newInt;
newInt = rnd.Next(min , max);
return (newInt);
}
編集:
これは私の方法です、みなさんありがとうございます。
public static double randomPercentChange(Boolean? positive)
{
if(positive == true)
{
return (posPercents [ rnd.Next(posPercents.Length) ]);
}
else if(positive == false)
{
return (negPercents [ rnd.Next(negPercents.Length) ]);
}
else if(positive == null)
{
return (1);
}
return 1;
}
"これはarray.lengthの意味が0-9ですか?"その質問は意味をなさない。長さは単なる値で、あなたの場合は10になります。 –
インデックスの有効範囲は何ですか?答えは '0 .. array.Length - 1'です。しかし、 'Length'は配列を初期化した負の値ではありません。 –
SO .... MUCH .... SPACING ...余分な空きスペースを取り除いてください。 CTRL + K + D! – MichaelThePotato