PDA

View Full Version : خطای ...... Index was outside the



bitcob589
یک شنبه 21 اسفند 1390, 10:01 صبح
با سلام
به نظر شما خطای زیر به چه علت می تواند باشد

Index was outside the bounds of the array

Alfred188
یک شنبه 21 اسفند 1390, 10:16 صبح
سلام،
این اخطار داره می گه شما می خواهید از آرایه ای استفاده کنید که جزو آرایه های موجود نیست!

bitcob589
یک شنبه 21 اسفند 1390, 10:22 صبح
چگونه می شود متوجه شد کدام آرایه ای استفاده می شود جز آرایه موجود نیست

Alfred188
یک شنبه 21 اسفند 1390, 10:59 صبح
چگونه می شود متوجه شد کدام آرایه ای استفاده می شود جز آرایه موجود نیست
مثلا شما ميايد يه حلقه for درست مي كنيد مثل زير:


for(int i=0;i<10;i++)
{
string text=str[i];
}

حالا اين وسط اگه str[9] موجود نباشه مياد همون خطاي شما رو مي ده! انشاالله كه تونسته باشم درست تعريفش كنم

bitcob589
چهارشنبه 24 اسفند 1390, 11:00 صبح
مثلا شما ميايد يه حلقه for درست مي كنيد مثل زير:


for(int i=0;i<10;i++)
{
string text=str[i];
}

حالا اين وسط اگه str[9] موجود نباشه مياد همون خطاي شما رو مي ده! انشاالله كه تونسته باشم درست تعريفش كنم

در کد بالا در حلقه دفعات خوانده شدن آرایه مشخص شده است اگر تعداد آرایه که خوانده می شود بیشتر از مقداری که در حلقه مشخص شده است با خطا مواجه خواهد شد چگونه می توان هر تعداد آرایه که خوانده می شود در یک آرایه از نوع string ریخت در واقع مثل کد بالا تعداد دفعات خوانده شدن آرایه مشخص نشود
لطفا راهنمایی بفرمایید

alonemm
چهارشنبه 24 اسفند 1390, 13:35 عصر
باسلام:
اگر میخواید که به این خطا برخورد نکنید باید شرط حلقه تکرار شما بر حثب property به نام Count تعیین بشه.

اما اگر میخواید به تعداد نامشخصی از این آرایه استفاده کنید بهتره از ArrayList استفاده کنید:
فضای نام زیر رو اضافه کنید:

using System.Collections;

به مثال زیر دقت کنید:

using System;
using System.Collections;
public class SamplesArrayList {

public static void Main() {

// Creates and initializes a new ArrayList.
ArrayList myAL = new ArrayList();
myAL.Add("Hello");
myAL.Add("World");
myAL.Add("!");

// Displays the properties and values of the ArrayList.
Console.WriteLine( "myAL" );
Console.WriteLine( "\tCount: {0}", myAL.Count );
Console.WriteLine( "\tCapacity: {0}", myAL.Capacity );
Console.Write( "\tValues:" );
PrintValues( myAL );
}

public static void PrintValues( IEnumerable myList ) {
System.Collections.IEnumerator myEnumerator = myList.GetEnumerator();
while ( myEnumerator.MoveNext() )
Console.Write( "\t{0}", myEnumerator.Current );
Console.WriteLine();
}
}
/*
This code produces the following output.

myAL
Count: 3
Capacity: 16
Values: Hello World !
*/

bitcob589
چهارشنبه 24 اسفند 1390, 14:08 عصر
از تعدادی آرایه نامشخصی استفاده شده است به چه صورتی می توان تعداد آرایه ها را گرفت و در یک ArrayList ریخت

alonemm
چهارشنبه 24 اسفند 1390, 15:22 عصر
از تعدادی آرایه نامشخصی استفاده شده است به چه صورتی می توان تعداد آرایه ها را گرفت و در یک ArrayList ریخت

به مثال زیر توجه کنید:

int[] arrayA = new int[5];
int lengthA = arrayA.Length;
Console.WriteLine(lengthA);
// Writes 5