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

آرایه و ArrayList در جاوا

۲۹ بهمن ۱۳۹۴

همانند ++C در جاوا نیز می توان آرایه های یک بعدی و دو بعدی و Arraylist را که مانند لیست پیوندی است ، تعریف نمود :

آرایه های یک بعدی

آرایه ها قابلیت کم شدن و زیاد شدن ندارند اما می توان بعد از تعریف آنها فقط از چند عنصر آن استفاده کرد و مابقیه ی عناصر بی استفاده بمانند . برای تعریف یک آرایه یک بعدی در جاوا به صورت زیر عمل می کنیم  :

int []c = new int[3];

در تکه کد بالا بعد از مشخص کردن نوع آرایه ، علامت[] و نام آرایه ، از آنجا که هر چیزی در جاوا یک شیء است ، با استفاده از اپراتور new ، سازنده ی این آرایه را فراخوانی می کنیم . تعداد عناصر این آرایه ۳ می باشد . همینطور شماره اندیس هر آرایه در جاوا مانند ++C ، از صفر تا یکی کمتر از سایزی که برای آن درنظر گرفته شده است ، می باشد .(در اینجا از ۰ تا ۲).

بهتر است با استفاده از یک حلقه ی for ، عناصر آرایه را مقداردهی اولیه کنیم . شما می توانید همین تعریف را به صورت زیر نیز تعریف کنید :

int []c;
c = new int[3];

علاوه بر این نوع تعریف می توان به طریق دیگری نیز به تعریف آرایه ی یک بعدی پرداخت ، با این تفاوت که در همان لحظه ی تعریف ، مقادیر اولیه عناصر نیز مشخص شوند :

String c[]={"Welcome" ,"to" , "TakinWeb"};

در کد بالا آرایه ای از String ها را مشاهده می کنید که سایز آرایه مشخص نیست . درواقع سایز آرایه همان تعداد String هایی است که در داخل آکولاد قرار داده شده است . شما می توانید این تعریف را به صورت زیر هم بنویسید :

String []c={"Welcome" ,"to", "TakinWeb"};

حال می خواهیم به وسیله ی یک حلقه ی for به عناصر آرایه دسترسی پیدا کنیم . این حلقه می تواند به دو صورت پیاده سازی شود :

for(int j=0;<3;j++)
    System.out.println(c[j]);

این دستور می تواند عناصر آرایه را نمایش دهد . اما می توان به جای عدد ۳ که همان تعداد عناصر آرایه است ، از c.lenth برای مشخص کردن طول آرایه استفاده نمود :

for(int j = 0 ;<c.length;j++)
        System.out.println(c[j]);

اما نوع دومی از حلقه ی for وجود دارد که به آن حلقه ی for پیشرفته (Enhanced for statement) می گویند . در واقع این حلقه ی for دیگر شمارنده ای برای مشخص کردن گام های حرکت ندارد . به جای آن متغیری دارد که باید از نوع عناصر آرایه تعریف شود :

for (String num : c)
      System.out.println(num);

اگر عناصر آرایه ی c از نوع String باشند ، num که همان متغیری است که روی عناصر آرایه حرکت می کند نیز باید از نوع String باشد . بعد از تعریف این متغیر باید از علامت : (کولن) و سپس نام آرایه نوشته شود .در داخل حلقه نیز مانند حلقه ی معمولی باید شرط یا شرطهایی را که می خواهیم قرار دهیم .

آرایه های دو بعدی

مانند ++C در جاوا نیز می توان به تعریف آرایه های دو بعدی پرداخت . آرایه های دو بعدی مانند یک جدول هستند که دارای سطر وستون می باشند :

arr

شکل بالا ، یک آرایه ی دو بعدی را نشان می دهد که نام آرایه a و دارای ۳ سطر و ۴ ستون می باشد . برای تعریف آرایه در جاوا به صورت زیر عمل می کنیم :

int [][]array1 = new int[2][3];
int array2[][]= new int [2][3];

همینطور می توان در لحظه ای تعریف عناصر آرایه را مقداردهی کرد :

int array1[][]= {{1,2,3},{4,5,6}};
int [][]array2= {{1,2,3},{4,5,6}};

ArrayList

همانطور  که میدانید و گفته شد ، طول آرایه هایی که تا کنون معرفی شدند ، را نمی توان تغییر داد . در واقع نمی توان به آنها عنصری اضافه یا از آنها کم کرد . (این آرایه ها استاتیک هستند). اما نوع دیگری از آرایه ها وجود دارند که امکان کم یا زیاد شدن طول آرایه ، حذف و درج در آنها وجود دارد که در جاوا به آنها ArrayList می گویند .

برای تعریف ArrayList به صورت زیر عمل می کنیم :

ArrayList<type> ArrayName = new ArrayList();

برای مثال فرض کنید بخواهیم لیستی از String ها داشته باشیم :

 ArrayList<String> Color = new ArrayList();

بنابراین طبق این تعریف ما لیستی به نام  Color از نوع String خواهیم داشت .

حال می خواهیم با استفاده از توابع کلاس ArrayList عناصری را در این لیست درج کنیم . تابعی که برای این کار استفاده می شود ، تابع ()add می باشد :

  Color.add("Red");
  Color.add("Blue");
  Color.add("Green");

برای حذف کردن یک عنصر نیز از تابع remove استفاده می کینم :

Color.remove(1);

به دلیل اینکه عناصر لیست از اندیس ۰ شروع می شوند ، با گذاشتن عدد ۱ در ورودی این تابع عنصر یکم حذف خواهد شد . حالا اگر بخواهیم لیستمان را چاپ کنیم فقط دو عنصر صفرم و دوم وجود خواهند داشت :

  System.out.println(Color);

علاوه بر این روش می توانیم از یک حلقه ی for برای چاپ عناصر لیست استفاده کنیم :

    for (int i = 0 ; i <<Color.size() ; i++)
            System.out.println(Color.get(i));

تابع ()size از این کلاس نشاندهنده ی تعداد عناصر لیست می باشد . تابع (get(int index که پارامترورودی اش یک Int است ، هم عناصر لیست را برمی گرداند .

فراموش نکنید که باید کلاس ArrayList ، حتما import شود :

import java.util.ArrayList ;

در ضمن اگر اینستاگرامی هستید حتما @Takinweb را فالو کنید….

 

درباره ی عطیه رحمانی

دیدگاه ها

یک دیدگاه ارسال شده !

  1. VAHID می‌گه:

    این Array list ذهن منو خیلی مشغول کررده بود ممنون

دیدگاه خود را به ما بگویید VAHID

کلیه ی حقوق مادی و معنوی مطالب متعلق به سایت تکین وب می باشد و کپی برداری و بازنشر آن بدون ذکر منبع کاری غیر حرفه ای و غیر اخلاقی و قابل پیگرد قانونی خواهد بود.
کانال تلگرام تکین وب