غرق در دنیای برنامه نویسی , برنامه نویس خندون و پر انرژی
توابع Variadic در سوئیفت
مقدمه
در این مقاله قرار هست توضیح بدیم که این گونه از توابع چگونه عمل میکنند
شروع
بعضی از توابع variadic هستند به این معنی که میتوانند یک پارامتر میتواند بینهایت پارامتر از جنس خود را بپذیرد
یک مثال : دقیقا مشابه تابع print که شما هر چند تا پارامتر داشته باشید میتونید بهش پاس بدید و آنها را با با comma ( , ) جدا میکنید و آن هم برای شما هر کدام را با فاصله چاپ میکند
به کد زیر توجه کنید
print("hello","Im here","Games")
خروجی کد بالا
hello im here Games
اما ما چطور میتوانیم همچین کاری انجام دهیم
یک راه بیسیک وجود دارد ، که پارامتر تابع یک آرایه بگیرید( که رفتار حرفه ای نیست )
اما راه دوم استفاده از مدل نوشتاری ...Type مثلا ...String . خب String یک رشته میگیرد اما ...String میتواند چند رشته بگیرد، شاید هزاران رشته !!
پارامتر Variadic را سوئیفت به یک آرایه تبدیل میکند و شما میتوانید در آن Iterate یا همان پیمایش کنید
حالا بیاید تابعی با پارامتر Variadic بسازیم
func square(numbers: Int...) {
for number in numbers {
print("\(number) squared is \(number * number)")
}
}
پارامتر number در اینجا میتواند بیش از یک پارامتر بگیرد
در داخل بدنه تابع یک حلقه وجود دارد که در numbers پیمایش میکند و آن را به توان دو میرساند و در آخر چاپ میکند
نحوه ورودی دادن به اینگونه توابع
square(numbers: 1, 2, 3, 4, 5)
خروجی
1 squared is 1
2 squared is 4
3 squared is 9
4 squared is 16
5 squared is 25
مطلبی دیگر از این انتشارات
آموزش ساخت Static Tableview در سوئیفت
مطلبی دیگر از این انتشارات
آموزش ساخت انیمشن زنجیره ای در سوئیفت
مطلبی دیگر از این انتشارات
انتخاب عکس از گالری در سوئیفت