با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
با جلسه ای دیگر از سری جلسات دوره آموزش زبان برنامه نویسی دارت Dart در خدمت شما هستیم.
در این جلسه قصد داریم به آموزش حلقه های تکرار در زبان دارت Dart از جمله حلقه for در زبان دارت و حلقه while در زبان دارت بپردازیم.
از حلقه های تکرار برای تکرار و اجرای چندین باره یک قطعه کد استفاده میشود.
یک مثال ساده این است که بخواهیم عبارت “hello World” را صد بار با استفاده از تابع print نمایش دهیم.
یک راه این است که تابع print را صد بار بنویسیم که غیر عقلانی به نظر میرسد. در این صورت فایل ما حاوی صد خط کد یکسان میشود.
راه بهتر دیگر استفاده از حلقه های تکرار است. کافیست تا تابع print را داخل حلقه گذاشته و حلقه را اجرا کنیم.
سه نوع حلقه تکرار در زبان دارت وجود دارد:
حلقه for میتواند به تعداد مشخصی که برایش تعریف میکنیم، تکرار شود.
این حلقه از سه قسمت تشکیل شده است:
گرامر آن به شکل زیر است:
1 2 3 4 | for (initialize counter; condition; counter value) { //code } |
مثال:
1 2 3 4 | var message = StringBuffer('Dart is fun'); for (var i = 0; i < 5; i++) { message.write('!'); } |
با اجرای کد بالا، رشته !Dart is fun پنج بار چاپ میشود.
حلقه بالا یک شمارنده به نام i دارد که پس از هر بار تکرار حلقه یک واحد به آن اضافه میشود. (++i)
تا زمانی که شرط حلقه (i < 5) درست باشد، حلقه تکرار میشود.
حلقه while برخلاف حلقه for هیچ شمارنده ای ندارد و فقط یک و تا زمانی که شرط حلقه درست باشد، به تکرار ادامه میدهد.
همچنین خودمان میتوانیم داخل حلقه شمارنده ایجاد کنیم.
گرامر آن به شکل زیر میباشد:
1 2 3 4 | while (condition) { //code } |
مثال:
1 2 3 | while (!isDone()) { doSomething(); } |
همچنین با قرار دادن true داخل پرانتز، میتوانیم یک حلقه بی نهایت ایجاد کنیم.
این حلقه دقیقا مانند حلقه while است با این تفاوت که شرط حلقه در انتها قرار دارد.
گرامر :
1 2 3 | do { //code }while (condition); |
از این کلمات کلیدی برای کنترل جریان حلقه استفاده میشود.
کلمه کلیدی break، حلقه را متوقف کرده و از آن خارج میشود.
1 2 3 4 | while (true) { if (shutDownRequested()) break; processIncomingRequests(); } |
کلمه کلیدی continue تکرار فعلی حلقه را متوقف کرده و تکرار بعدی حلقه را اجرا میکند.
1 2 3 4 5 6 | for (int i = 0; i < 5; i++) { if(i == 3) continue; print(i); } |
خروجی کد بالا به صورت زیر است:
1 2 3 4 | 0 1 2 4 |
جلسه آموزش حلقه های تکرار در زبان دارت نیز به پایان رسید.
در جلسه بعد به آموزش دستورات شرطی در زبان دارت میپردازیم.
احمد
سلام
آموزش شما کلا در هم و مخلوطه و هیچ راه مشخصی ندارید.
کلا میشه گفت اگه یه نو آموز اینو ببینه کلا تا عمر داره از برنامه نویسی دوری میکنه
مثلا شما if رو درس ندادید و اول حلقه درس دادید و توی حلقه if اوردید 😐
لطفا اصلاح بشه با تشکر