سلام بر تمامی برنامه نویسان ایرانی!
کار با رشته ها:
رشته مجموعه ای از character می باشد کِه ابتدا و انتهای اون به وسیله علامت نقل قول (“) مشخص میشه. شیوه استِفاده از رشته ها را در بَرنامه های قَبلی بَرای نمایش نتیجه بَرنامه در مانیتور دیده اید . رشته ها عموما بَرای این منظور استِفاده می شوند کِه به کاربر اطلاع داده شود در بَرنامه چه اتفاقی افتاده می باشد و چه اتفاقی میخواهد رخ دهد . یک استِفاده دیگه از رشته ها،ذخیره بخشی از یک متن بَرای استِفاده از اون در یک اَلگوریتم می باشد . قبلا از رشته زیر استِفاده شده :
"Floating Points");
“Multiplication test…”و “Floating Points” نمونه هایی از رشته می باشدند،به دلیل اینکه دارای علامت (“) در ابتدا و انتهای خود می باشدند . ولی عِبارت dblNumber چی؟ در عِبارت بالا،مِقدار متغیّر dblNumber به رشته تبدیل شده و پس از ترکیب با دو رشته دیگه در صفحه نشان داده خواهد شد (نحوه تبدیل این متغیّر عددی به رشته،بحثی می باشد کِه جلوتر راجع به اون صحبت شده می باشد . ولی فعلاً این را بدونین کِه در این جا یک تبدیل صورت گرفته است). مثلا اگه مِقدار متغیّر dblNumber مساوی با 27 باشد،این مِقدار به یک عِبارت رشته ای کِه دو character طول داره تبدیل میشه و سپس روی صفحه نشان داده میشه .در قِسمت امتحان کنین بعدی،با یک سری از کار هایی کِه میتوانید با رشته ها انجام بدین آشنا خواهید شد .
امتحان کنین: استِفاده از رشته ها
1) با استِفاده از گزینه Project New یک پروژه جدید در visual studio تَعریف کنین و نام اون را Strings قرار بدین.
2) با استِفاده از Toolbox،یک دکمه روی form قرار بدین. ویژگی Name این Button را مساوی btnStrings و خاصیت Text اون را مساوی Strings Using قرار بدین. روی اون دو بار کلیک نماییدو در متود ایجاد شده ، کُد زیر را وارد کنین:
{
//Declare variable
string strData;
//Set the string value
strData = "Hello, world!";
//Display the result
MessageBox.Show(strData, "Strings");
}
3) بَرنامه را اجرا نمایید و روی دکمه Using Strings کلیک نمایید. مسیج باکسی شبیه شکل 3-6 نشان داده خواهد شد .
چگونه کار میکنه ؟
بَرای تَعریف متغیّری کِه بتونه رشته ها را در خود نگه داری کند،میتونین شبیه تَعریف متغیّر های عددی عمل کنین . ولی این مرتبه از کلمه کلیدی string استِفاده کنین :
string strData;
مثل قبل،یک مِقدار را به متغیّر جدید اختصاص می دَهید :
strData = "Hello, world!";
بَرای مشخص کردن این کِه رشته شُما از کجا شروع شد ه و تا کجا ادامه پیدا میکنه باید از علامت نقل قول (“) استِفاده کنین . این مورد اهمیت زیادی داره،به دلیل اینکه این علامت به ویژوال سی شارپ میگوید کِه کدام عبارات را باید به عنوان رشته در نظر بگیرد و اون ها را کامپایل نکنه. اگه از علامت نقل قول استِفاده نکنین،ویژوال سی شارپ با این متن ها به عنوان کُد رفتار کرده،سعی میکنه اون ها را کامپایل کند و نمیتونه. بنابَراین کامپایل کل بَرنامه با error رو به رو خواهد شد . وقتی مِقدار “Hello, world!” را در متغیّر strData ذخیره کردید میتوانید اون را در به عنوان یک parameter به متود MessageBox.Show بفرستین تا روی مانیتور چاپ کند . همون طور کِه دیدین نحوه تَعریف و استِفاده از رشته ها نیز شبیه اعداد می باشد . در بخش بعدی در مورد نحوه انجام عملیات مختلف روی رشته ها صحبت خواهیم کرد.
اتّصال رشته ها :
اتّصال رشته ها به معنی به هم متصل کردن یک سری از رشته ها د ر امتوداد یکدیگه و ایجاد یک رشته جدید می باشد. اتّصال بَرای رشته ها مثل عمل جمع کردن در اعداد می باشد. در قِسمت امتحان کنین بعدی،با نحوه این عمل آشنا خواهید شد .
امتحان کنین: اتّصال رشته ها
1) در پروژه ای کِه در قِسمت قَبلی ایجاد نمودید،به بخش طرّاحی Form1 بروید و یک دکمه جدید بیفزایید. ویژگی Name اون را مساوی btnConcatenation و ویژگی Text اون را مساوی Concatenation قرار بدین. روی این کنترل دو بار کلیک نمایید و کُد زیر را در متود ایجاد شده وارد کنین :
EventArgs e)
{
//Declare variables
string strOne;
string strTwo;
string strResults;
//Set the string values
strOne = "Hello, ";
strTwo = "World!";
//Concatenate the strings
strResults = strOne + strTwo;
//Display the results
MessageBox.Show(strResults, "Strings");
}
2) بَرنامه را اجرا نمایید و روی دکمه ی Concatenation کلیک نمایید. مسیج باکسی شبیه شکل 3-6 مشاهده خواهید کرد .
چگونه کار میکنه ؟
در این امتحان کنین،ابتدا سه متغیّر از نوع رشته تَعریف میکنین :
string strOne;
string strTwo;
string strResults;
سپس به دو متغیّر اوّل مِقدار می دَهید :
strOne = "Hello, ";
strTwo = "World!";
بعد از این کِه به دو متغیّر اوّل مِقدار دادید،دو رشته را با استِفاده از علامت جمع (+) با هم جمع میکنین و عِبارت جدید را در متغیّر سوم به نام strResults قرار می دَهید :
strResults = strOne + strTwo;
در واقع در این بخش به compiler (کامپایلر) می گویید : “مِقدار متغیّر strResults را مساوی مِقدار strOne به علاوه مِقدار strTwo قرار بده”.موقعی کِه متود Show.MessageBox را فراخوانی کردید،مِقدار strResults مساوی “Hello, world!” خواهد بود ، بنابَراین نتیجه ای شبیه پیش دریافت میکنین.
MessageBox.Show(strResults, "Strings");
استِفاده از عملگر اتّصال رشته در درون بَرنامه :
بَرای اتّصال دو رشته به یکدیگه حتماً نباید متغیّری تَعریف کنین و رشته ه ا را درون اون قرار بدین . بلکه میتونین درون کُد و به سرعَت از اون ها استِفاده کنین. این شیوه در امتحان کنین این قِسمت شرح داده شده می باشد .
امتحان کنین: اتّصال رشته ها درون بَرنامه
1) مجددا به بخش طرّاحی Form1 برگردید و یک Button جدید به صفحه بیفزایید . ویژگی Name اون را مساوی btnInlineConcatenation و ویژگی Text اون را مساوی Inline Concatenation قرار بدین. روی Button دو بار کلیک نمایید و کُد زیر را در اون وارد کنین :
EventArgs e)
{
//Declare variable
int intNumber;
//Set the value
intNumber = 26;
//Display the results
MessageBox.Show("The value of intNumber is: " +
intNumber, "Strings");
}
2) کُد را اجرا نمایید و روی دکمه ی Concatenation Inline کلیک نمایید . نتیجه ای شبیه شکل 3-7 را مشاهده خواهید کرد .
چگونه کار میکنه ؟
استِفاده از عملگر اتّصال رشته مثل کُد بالا را قبلا در مثال های پیش دیده بودید . چیزی کِه در واقع این کُد انجام میده تبدیل مِقدار ذخیره شده در متغیّر intNumber به رشته می باشد . به این صورت این مِقدار میتونه در مانیتور چاپ شود . به این کُد نگاه بیندازید :
MessageBox.Show("The value of intNumber is: " +
intNumber, "Strings");
قِسمت ” :is intNumber of value The “در واقع یک رشته است،اما شُما مجبور نمی باشید که اون را به عنوان یک متغیّر رشته ای تَعریف کنین . در ویژوال سی شارپ ، این نوع رشته ها را یک ثابت رشته ای می نامند،به دلیل اینکه از موقع تَعریف تا موقع استِفاده،مِقدار اون ها ثابت می باشد و تغییر نمیکنه . زمانی کِه شُما از عملگر اتّصال رشته ها روی این رشته و متغیّر intNumber استِفاده کردید،مِقدار متغیّر intNumber به رشته تبدیل خواهد شد و در انتهای “The value of intNumber is: ” قرار خواهد گرفت. نتیجه این عمل یک رشته جدید حاوی هر دو عِبارت رشته و عدد خواهد بود کِه به متود Show.MessageBox فرستاده میشه.