آرایه ها و لیست در برنامه نویسی
به نام خدا. در این مطلب با لیست ها و مفهوم آرایه ها آشنا خواهیم شد. گاهی نیاز است تا چندین مقدار را در یک متغیر تعریف کنید و سپس آن ها را واکشی کنید، برای این کار لازم است تا با لیست ها آشنا باشید.
در ادامه مطلب با فلاترلند همراه باشید.
آرایه ها در اکثر زبان ها برای نگهداری چند مقدار درون یک متغیر استفاده می شوند، در زبان دارت هم این مفهوم صدق می کند.
برای ساخت یک متغیر طبق تعاریف قبلی می توانیم این گونه عمل کنیم:
Type varName = value;
همانطور که مشاهده می شود تنها یک مقدار قابل نگهداری است و نمی توانیم چندین مقدار را در یک متغیر نگه داریم.
بنابراین باید به سراغ ساخت لیست ها برویم.
فرمول ساخت کلی یک لیست:
List<varTypes> listName = [value1, value2, value3, ...];
همانطور که می بینید به جای Type در مثال ساخت متغیر مستقیما از List استفاده کردیم. اما چیزی که جدید است varTypes است. همانطور که می بینید این مقدار بین دو <> قرار گرفته است. در اینجا باید نوع مقادیری که قرار است در لیست ذخیره شود را قرار دهیم. به این مثال توجه کنید:
List<String> names = ["Alireza", "Mohammad", "Melika"];
همانطور که می بینید لیستی از String ها ساختیم و یک سری مقدار را وارد آن کردیم.
حال برای واکشی هر یک از آن ها کافی است تا اندیس ( index ) آن ها را بدانیم، همانطور که مشخص است در برنامه نویسی اندیس ها از صفر شروع می شوند پس در نتیجه مقدار Alireza اندیس صفر دارد و مقدار Melika اندیس دو دارد.
حال بیایید مقدار Mohammad را واکشی کنیم. حدس می زنید اندیس آن چند باشد؟ بله اندیس آن برابر ۱ است زیرا دومین عنصر لیست است و وقتی از صفر بشماریم اندیس آن یک می شود.
برای واکشی از فرمول زیر پیش می رویم:
listName[index]
به جای listName اسم لیست را قرار می دهیم و به جای index اندیس مقدار مورد نظر را قرار می دهیم. بنابراین این کد Mohammad را چاپ می کند.
print(names[1]);
حال فرض کنید می خواهید لیست خود را خالی کنید تا هیچ عنصری در آن نباشد. برای این کار می توانید از دستور clear استفاده کنید. طبق فرمول زیر
listName.clear()
همانطور که می بینیم کافی است نام لیست را قرار دهیم و دستور clear را با . به آن وارد کنیم.
این دستور تمام عنصر های داخل لیست را خالی می کند و لیست خالی می شود.
اکنون اگر بخواهیم به لیست مقداری اضافه کنیم باید از فرمول زیر استفاده کنیم:
listName.add(value);
به جای value مقدار مورد نظر خود را قرار دهید. توجه کنید که مقدار وارد شده باید با جنس لیست ( مانند مثال که String بود ) یکسان باشد. در واقع باید مقدار هم جنس لیست باشد.
به این مثال توجه کنید:
names.add("Hossein");
در این حالت Hossein به لیست اضافه می شود.
برخی مواقع لازم است تا یک لیست از قبل پر شده بسازیم. مثلا یک لیست می خواهیم که از 0 پر شده.
طبق این فرمول:
List<varTypes> listName = new List.filled(count, value);
در این دستور تا قسمت نام گذاری لیست تفاوتی ندارد. اما از قسمت new مطالب تازه است.
new به برنامه می گوید یک لیست جدید بساز.
دستور List.filled به برنامه می گوید لیست جدید را با مقادیری پر کن.
count تعداد عناصر لیست را می خواهد. مثلا لیستی با ۱۰ عنصر که همگی برابر صفر اند.
value همان مقداری است که قرار است با آن پر شود مثلا ما گفتیم قرار است با صفر پر شود.
در نتیجه لیست به شکل زیر در می آید:
List<int> zeroes = new List.filled(10, 0);
توجه داریم که مقدار value باید با جنس لیست یکسان باشد.
در نتیجه لیست خروجی ما به این شکل خواهد بود:
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
همچنین شما می توانید یک لیست خالی و بدون عنصر بسازید:
List<varTypes> listName = new List.empty();
- ۰۲/۱۲/۰۶