"

کلاس Array در سی شارپ

تیم تحریریه 1403/08/19 0 367
لینک کوتاه https://zoheirsoftware.com/z/0b84041 |
معرفی کلاس Array در سی‌شارپ,متدهای مهم کلاس Array در سی  شارپ,ویژگی‌های مهم کلاس Array در سی شارپ

معرفی کلاس Array در سی‌شارپ

کلاس Array در سی‌شارپ یکی از مهم‌ترین و اصلی‌ترین کلاس‌ها برای مدیریت آرایه‌ها است.

این کلاس در فضای نام System تعریف شده و به عنوان پایه‌ای برای تمامی انواع آرایه‌ها، از جمله آرایه‌های تک‌بعدی، چندبعدی و آرایه‌های دندانه‌دار (Jagged Array)، استفاده می‌شود.

کلاس Array امکان دسترسی به عناصر آرایه‌ها، جستجو، مرتب‌سازی، معکوس کردن و عملیات مختلف دیگر را فراهم می‌کند.

همه آرایه‌ها در سی‌شارپ از کلاس Array ارث‌بری می‌کنند، بنابراین هر آرایه‌ای که در این زبان تعریف می‌شود به طور خودکار از متدها و ویژگی‌های این کلاس بهره می‌برد.

در نتیجه، با استفاده از این کلاس می‌توانیم به صورت بهینه و آسان‌تر با آرایه‌ها کار کنیم.

 

معرفی کلاس Array در سی‌شارپ

تعریف آرایه در سی‌شارپ

آرایه‌ها در سی‌شارپ به عنوان ساختارهای داده‌ای با اندازه ثابت تعریف می‌شوند که عناصر را به ترتیب و به صورت پیوسته در حافظه ذخیره می‌کنند. در اینجا چند روش برای تعریف آرایه‌ها وجود دارد:

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

int[] numbers = new int[5]; // آرایه‌ای از ۵ عنصر از نوع int


مقداردهی اولیه هنگام تعریف آرایه:

int[] numbers = { 10, 20, 30, 40, 50 };


در مثال بالا، آرایه numbers دارای پنج عنصر با مقادیر مشخص شده است. آرایه‌ها در سی‌شارپ اندازه ثابت دارند و پس از تعریف، اندازه آن‌ها تغییر نمی‌کند.

دسترسی به عناصر آرایه‌ها و مدیریت آن‌ها

برای دسترسی به عناصر یک آرایه، از ایندکس آن‌ها استفاده می‌کنیم. ایندکس‌ها در سی‌شارپ از صفر شروع می‌شوند. به عنوان مثال:

int[] numbers = { 10, 20, 30, 40, 50 };
int firstNumber = numbers[0]; // دسترسی به اولین عنصر
numbers[1] = 25; // تغییر مقدار دومین عنصر به ۲۵



متدهای مهم کلاس Array در سی  شارپ

کلاس Array مجموعه‌ای از متدهای کاربردی برای مدیریت آرایه‌ها را فراهم می‌کند که در ادامه به برخی از مهم‌ترین آن‌ها اشاره خواهیم کرد.

  •  متد Sort

    متد Sort برای مرتب‌سازی عناصر آرایه به صورت صعودی استفاده می‌شود:
int[] numbers = { 50, 10, 40, 20, 30 };
Array.Sort(numbers);

foreach (int number in numbers)
{
    Console.WriteLine(number);
}


خروجی این کد به‌صورت زیر خواهد بود:

10
20
30
40
50

 

  • متد Reverse

    این متد ترتیب عناصر آرایه را معکوس می‌کند:
int[] numbers = { 10, 20, 30, 40, 50 };
Array.Reverse(numbers);

foreach (int number in numbers)
{
    Console.WriteLine(number);
}


خروجی:

50
40
30
20
10

 

  • متد IndexOf

    متد IndexOf برای پیدا کردن ایندکس اولین وقوع یک مقدار مشخص در آرایه استفاده می‌شود:
int[] numbers = { 10, 20, 30, 40, 50 };
int index = Array.IndexOf(numbers, 30);
Console.WriteLine(index);


خروجی:

2
  • متد Clear

    این متد تمامی عناصر مشخص شده در آرایه را حذف می‌کند و مقدار 0 یا null (برای نوع‌های مرجع) را جایگزین می‌کند:
int[] numbers = { 10, 20, 30, 40, 50 };
Array.Clear(numbers, 1, 3); // از ایندکس ۱ تا ۳ را پاک می‌کند

foreach (int number in numbers)
{
    Console.WriteLine(number);
}


خروجی:

10
0
0
0
50

 

 

🌟 آیا به دنبال یک فرصت عالی برای یادگیری برنامه‌نویسی هستید؟ 🚀

با دوره آموزشی سی‌شارپ ما، شما می‌توانید مهارت‌های خود را به سطح جدیدی ارتقا دهید! این دوره به‌طور کامل طراحی شده تا به شما کمک کند تا از مبتدی تا پیشرفته در دنیای برنامه‌نویسی سی‌شارپ پیش بروید.

👨‍🏫 چرا دوره ما را انتخاب کنید؟

  • محتوای جامع و عملی: با پروژه‌های واقعی و تمرینات عملی، یادگیری را به تجربه‌ای جذاب تبدیل کنید.
  • مدرس مجرب: از تجربه و دانش مدرس حرفه‌ای بهره‌مند شوید که شما را در هر مرحله از یادگیری راهنمایی می‌کنند.
  • پشتیبانی ۲۴/۷: هر زمان که سوالی داشتید، ما در کنار شما خواهیم بود تا به شما کمک کنیم.
  • دسترسی مادام‌العمر: به محتوای دوره دسترسی دائمی داشته باشید و هر زمان که خواستید، می‌توانید به آن مراجعه کنید.

💡 فرصت را از دست ندهید!

بایادگیری سی‌شارپ، می‌توانید در دنیای فناوری اطلاعات به یک متخصص تبدیل شوید و در پروژه‌های جذاب و چالش‌برانگیز شرکت کنید.

همین امروز به جمع یادگیرندگان ما بپیوندید و اولین قدم را به سوی آینده‌ای روشن‌تر بردارید!

شرکت در دوره آموزش برنامه نویسی سی شارپ

 

  • متد Copy

    این متد به ما امکان می‌دهد که عناصر یک آرایه را به آرایه‌ی دیگری کپی کنیم:
int[] sourceArray = { 10, 20, 30, 40, 50 };
int[] destinationArray = new int[5];

Array.Copy(sourceArray, destinationArray, 5);

foreach (int number in destinationArray)
{
    Console.WriteLine(number);
}


خروجی:

10
20
30
40
50
  • متد Resize

    با استفاده از این متد می‌توان اندازه آرایه را تغییر داد. اگر آرایه بزرگ‌تر شود، عناصر جدید با مقدار 0 یا null مقداردهی می‌شوند:
int[] numbers = { 10, 20, 30 };
Array.Resize(ref numbers, 5);

foreach (int number in numbers)
{
    Console.WriteLine(number);
}


خروجی:

10
20
30
0
0

 

  • متد Find و FindAll

    متد Find اولین عنصری را که با شرط مشخصی سازگار است پیدا می‌کند، و متد FindAll تمامی عناصر سازگار با شرط را برمی‌گرداند:
int[] numbers = { 10, 20, 30, 40, 50 };
int result = Array.Find(numbers, x => x > 25);
Console.WriteLine(result); // خروجی: ۳۰

int[] results = Array.FindAll(numbers, x => x > 25);

foreach (int number in results)
{
    Console.WriteLine(number);
}


خروجی:

30
40
50

 

متدهای مهم کلاس Array در سی  شارپ


ویژگی‌های مهم کلاس Array در سی شارپ

علاوه بر متدهای مختلف، کلاس Array ویژگی‌های دیگری نیز دارد که اطلاعات خاصی از آرایه را فراهم می‌کند.

  • ویژگی Length

    این ویژگی تعداد کل عناصر آرایه را برمی‌گرداند:
int[] numbers = { 10, 20, 30, 40, 50 };
Console.WriteLine(numbers.Length);

خروجی:

5
  • ویژگی Rank

    این ویژگی تعداد ابعاد آرایه را برمی‌گرداند. برای آرایه‌های تک‌بعدی مقدار 1 و برای آرایه‌های دوبعدی مقدار 2 خواهد بود:
int[,] matrix = new int[3, 3];
Console.WriteLine(matrix.Rank); 

خروجی:

2
  • ویژگی IsFixedSize

    این ویژگی نشان می‌دهد که آیا آرایه دارای اندازه ثابت است یا خیر. برای تمام آرایه‌ها مقدار این ویژگی true است:

 

int[] numbers = { 10, 20, 30 };
Console.WriteLine(numbers.IsFixedSize); 

خروجی:

true
  • ویژگی IsReadOnly

    این ویژگی نشان می‌دهد که آیا آرایه فقط خواندنی است یا خیر. در سی‌شارپ، مقدار این ویژگی برای آرایه‌ها به طور پیش‌فرض false است:

 

int[] numbers = { 10, 20, 30 };
Console.WriteLine(numbers.IsReadOnly);

خروجی:

false

 

ویژگی‌های مهم کلاس Array در سی شارپ

مثال‌هایی از کاربرد کلاس Array

در این بخش چند مثال عملی از کاربردهای کلاس Array را بررسی می‌کنیم:

  • مثال 1: مرتب‌سازی و معکوس کردن آرایه

در این مثال، ابتدا یک آرایه‌ی اعداد تعریف شده، سپس با استفاده از متدهای Sort و Reverse عملیات مرتب‌سازی و معکوس کردن انجام می‌شود.

int[] numbers = { 42, 17, 8, 99, 23 };
Array.Sort(numbers);
Array.Reverse(numbers);

foreach (int number in numbers)
{
    Console.WriteLine(number);
}


خروجی:

99
42
23
17
8

 

  • مثال 2: پیدا کردن عناصر با شرط خاص

    در این مثال، از متد FindAll برای یافتن تمام عناصر بزرگتر از ۲۰ استفاده می‌کنیم:
int[] numbers = { 10, 25, 30, 5, 40, 15 };
int[] results = Array.FindAll(numbers, x => x > 20);

foreach (int number in results)
{
    Console.WriteLine(number);
}


خروجی:

25
30
40



مثال پروژه محور کوتاه از کلاس Array در سی شارپ 

 یک مثال پروژه‌محور از استفاده از کلاس Array برای مدیریت نمرات دانشجویان در یک کلاس ارائه شده است.

در این مثال، از آرایه برای ذخیره‌ی نمرات استفاده می‌شود، و یک سری عملیات ساده روی نمرات انجام می‌گیرد.

using System;

public class StudentGrades
{
    public static void Main()
    {
        // تعریف آرایه‌ای با طول ثابت برای نمرات
        int[] grades = new int[5] { 85, 90, 78, 92, 88 };

        // محاسبه و نمایش میانگین نمرات
        int total = 0;
        for (int i = 0; i < grades.Length; i++)
        {
            total += grades[i];
        }
        double average = (double)total / grades.Length;
        Console.WriteLine("Average Grade: " + average);

        // یافتن بالاترین نمره
        int maxGrade = grades[0];
        foreach (int grade in grades)
        {
            if (grade > maxGrade)
                maxGrade = grade;
        }
        Console.WriteLine("Highest Grade: " + maxGrade);

        // نمایش همه نمرات
        Console.WriteLine("All Grades:");
        foreach (int grade in grades)
        {
            Console.WriteLine(grade);
        }
    }
}

 


توضیحات

  • تعریف آرایه: یک آرایه‌ی grades با طول ثابت ۵ ایجاد شده است.

  • محاسبه میانگین: با جمع کردن همه عناصر و تقسیم آن‌ها بر تعداد عناصر، میانگین نمرات محاسبه می‌شود.

  • یافتن بالاترین نمره: با استفاده از یک حلقه foreach بالاترین نمره در آرایه پیدا می‌شود.

  • محدودیت آرایه: طول آرایه ثابت است و اگر نیاز به افزودن نمرات بیشتر باشد، باید یک آرایه جدید ایجاد کنیم.

  • این پروژه نشان می‌دهد که چرا گاهی اوقات استفاده از ساختار داده‌های پویا مانند ArrayList بهتر است.

دوره های مرتبط
آموزش برنامه نویسی سی شارپ,آموزش پروژه محور سی شارپ,آموزش مقدماتی تا پیشرفته سی شارپ,طراحی نرم افزار تحت ویندوز

آموزش برنامه نویسی سی شارپ

زبان شی گرایی حرفه ای سی شارپ یک زبان قدرتمند برای طراحی نرم افزار به شمار میرود.

999,000 تومان

2.9k بازدید

ارسال دیدگاه

برای ارسال نظر لطفا ورود یا ثبت نام کنید.