ArrayList
-の要素をスフレするために次のコードを試していますquestionsAndSeperators
。私はこれを2つの方法で行っています。
方法1:-
List<Question> questionList = this.questionsAndSeperators.Cast<Question>().ToList();
Random rng = new Random();
int questionCount = questionList.Count;
while (questionCount > 1)
{
questionCount--;
int index = rng.Next(questionCount + 1);
Question value = questionList[index];
questionList[index] = questionList[questionCount];
questionList[questionCount] = value;
}
方法2:-
ArrayList questionList = this.questionsAndSeperators;
Random rng = new Random();
int questionCount = questionList.Count;
while (questionCount > 1)
{
questionCount--;
int index = rng.Next(questionCount + 1);
object value = questionList[index];
questionList[index] = questionList[questionCount];
questionList[questionCount] = value;
}
これQuestion
がクラスです。
方法2は正常に機能し、の要素をスフレしますがquestionsAndSeperators
、方法1は。の要素をスフレすることはできませんquestionsAndSeperators
。方法1の問題は何ですか?方法1で何か間違ったことをしていますか?