رفتن به مطلب

تاپیک مربوط به آموزش ها کتابخانه ها و سورس های سایت مرجع


MahdiHD

ارسال‌های توصیه شده

سلام به همه دوستان

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 ماه بعد...

سلام

موضوع : رشته های هوشمند یا String Smart Literal

این آموزش رو دوست و برادر خوبمون Erel  در سایت مرجع ارائه دادند :دی

خب قطعا توی سی شارپ چیزی به اسم PlaceHolder  شنیدید و موضوع ما به همین ربط پیدا می کنه.

و یا توی سی پلاس پلاس دیدید که با d%  مثلا میاییم یک داده ای چیزی رو چاپ می کنیم و این موضوع ماهم به همین موارد ربط پیدا می کنه

خب تفاوت اول این رشته های هوشمند با رشته ی معمولی :

رشته های هوشمند با علامت "$ شروع میشن و به همین $" ختم میشن.

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

 

مثال :

Dim s As String = $"Hello world"$
Log($"No need to escape "quotes"! "$)

تفاوت بعدیش در الحاق رشته هستش

ما توی رشته های معمولی با علامت & دوتا متن رو و یا یک متغییر رو به یک متن الحاق می کردیم.اما توی رشته های هوشمند متفاوت هستش

مثال :

Log($"5 * 3 = ${5 * 3}"$) '5 * 3 = 15

خب توجه کنید که اگر بخوایید بین رشته عمل خاصی رو انجام بدید که کامپایلر اون عمل رو جزء رشته شناسایی نکنه باید درون $"      "$ این از علامت $ استفاده و از {  } استفاده کنید

به کد توجه کنید بعد از مساوی ببینید دوباره از $ استفاده شده و عمل ضرب رو داخل یک براکت یا آکولاد باز و بسته قرار داده و در نتیجه می بینید که چه عملی رو انجام داده.

 

مثالی دیگر :

Dim x = 1, y = 2, z = 4 As Int
Log($"x = ${x}, y = ${y}, z = ${Sin(z)}"$) 'x = 1, y = 2, z = -0.7568024953079282

و نکته ای که قابل توجه هستش اینه که این قابلیت در زمان کامپایل اجرا میشه و شما نمی تونید در زمان رانتایم بیایید یک فایل TXT  بخونید و بهش الحاق کنید و یا یک رشته ای رو از ورودی بگیرید و نسبت بدید

و در ضمن این قابلیت از نسخه 4.3 به بعد هستش

 

حالا یک مورد دیگه از استفاده از این رشته های هوشمند کاربردش در نمایش خاص و فرمت خاصی از اعداد ( NumberFormat )  هستش.

 

مثال :

Dim h = 2, m = 15, s = 7 As Int
Log($"Remaining time $2{h}:$2{m}:$2{s}"$) 'Remaining time 02:15:07

خب ببینید اون عدد 2 طول میدان و یا نمایش ساعت به صورت دو رقمی هستش

 

خب کاربرد بعدیش هم در نمایش ساعت و تاریخ هستش :

Log($"Current time is $DateTime{DateTime.Now}"$) 'Current time is 02/02/2015 11:18:36

و تبدیلات کاراکتر های خاص در فایل XML :

Dim UserString As String = $"will it break your parser ><'"&?"$
Log($"User input is: $xml{UserString}"$)
'User input is: will it break your parser ><'"&?

 و در  نهایت لینک این آموزش از زبان خود Erel:

http://www.b4x.com/android/forum/threads/b4x-smart-string-literal.50135/

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...