قبل از هر چیز، اگه به برنامه نویسی اندروید علاقه مندی، من تو سایتم یک دوره آموزش برنامه نویسی اندروید از سطح کاملا مبتدی تا پیشرفته گذاشتم که کاملا رایگان میتونی ازش استفاده کنی، پس به دوره صفر مطلق اندروید یه سر بزن!
سلام دوستان تو این مقاله آموزشی قراره در مورد رشته ها در کاتلین حرف بزنیم، رشته ها در کاتلین بسیار شبیه به جاوا عمل میکنن اما توی چندین تا بخش عملکرد بهتری دارن و خیلی سادهتر کار ما رو راه میندازن، ادامه این مقاله رو بخون تا قابلیت های جدید رو ببینی
رشته ها در کاتلین مانند هر زبان برنامه نویسی دیگری، برای ذخیره متن ها استفاده میشود. یک رشته شامل مجموعهای از کاراکترها است که با دو نماد ” احاطه میشوند. در مثال زیر یک رشته در کاتلین را مشاهده میکنید:
var myText = "Hello"
برعکس جاوا، نیازی نیست دقیقا مشخص کنید که نوع داده متغیر باید یک رشته باشد زیرا کاتلین به اندازه کافی باهوش است و متوجه میشود که پیام hello بالا درون دو عدد ” قرار دارد و قطعا یک رشته است، اما خب دقیقا مانند سایر انواع داده ها درکاتلین که در جلسات قبل گفتیم، اگر به تعریف نوع داده اصرار دارید میتوانید مانند مثال زیر، نوع داده رشته را مشخص کنید.
var myText: String = "Hello"
نکته: اگر میخواهید یک رشته را بدون دادن مقدار به آن ایجاد کنید و بعدا در جای دلخواه مقداری را به آن اختصاص دهید، باید در هنگام تعریف رشته حتما نوع داده آن را ذکر کنید، اگه به مثال زیر دقت کنید ، این نوع پیاده سازی برای رشته ها در کاتلین کاملا غلطه:
var name
name = "Mohammad"
println(name) //خطا
و حالت درست آن مانند مثال زیر میباشد:
var name: String
name = "Mohammad"
println(name)
برای دسترسی به کاراکتر خاصی درون یک رشته میتوان از شماره ایندکس آن استفاده نمود. برای مثال در کد زیر کاراکتر صفرم H و کاراکتر دوم l هستش:
var txt = "Hello World"
println(txt[0]) // first element (H)
println(txt[2]) // third element (l)
رشته ها در کاتلین، جزء اشیاء هستند که دارای فیلد ها و متد های تعریف شده زیادی هستند که میتوانیم با استفاده از کاراکتر ( . ) به آنها دسترسی داشته باشیم (در پیج اینستاگرام کل مبحث شیء گرایی را از 0 تا 100 آموزش داده ایم) به عنوان مثال طول یک رشته را میتوتنیم از فیلد length دریافت کنیم:
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
println("The length of the txt string is: " + txt.length)
//output is : 26
با استفاده از دو متد toUpperCase و toLowerCase میتوانیم تمامی کاراکتر های یک رشته را به حروف بزرگ و یا حروف کوچک تبدیل کنیم:
var txt = "Hello World"
println(txt.toUpperCase()) // Outputs "HELLO WORLD"
println(txt.toLowerCase()) // Outputs "hello world"
با استفاده از عملگر + در بین دو رشته میتوان آن دو را باهم ادغام کرد و یک رشته جدید از مجموع دو رشته قبلی ایجاد کرد:
var firstName = "Mohammad"
var lastName = "Zare"
println(firstName + " " + lastName)
توجه داشته باشید که ما یک متن خالی (” “) برای ایجاد فاصله بین firstName و lastName در چاپ اضافه کرده ایم.
همچنین می توانید از تابع plus() برای به هم پیوستن دو رشته استفاده کنید:
var firstName = "Mohammad "
var lastName = "Zare"
println(firstName.plus(lastName))
به جای استفاده از جمع دو رشته که در بالا اشاره کردیم؛ میتوانیم از الگوهای رشته ای نیز استفاده کنیم که راهی بسیار ساده برای افزودن متغیرها و عبارات دورن یک رشته است، به این مثال دقت کنید:
var firstName = "Mohammad"
var lastName = "Zare"
println("My name is $firstName $lastName")
فقط کافیست از نماد $ استفاده کنیم، الگوهای رشته ای یکی از ویژگی های محبوب کاتلین نسبت به جاوا است زیرا مقدار کد نویسی را کاهش داده و دردسرهای مربوط به جمع رشته ها را بسیار کم میکند.
امیدوارم مطالبی که گفتم براتون مفید بوده باشه، از دیدن پیج اینستاگرام ترولرن غافل نشید، راستی یادتون باشه که همیشه بهترین جا برای یادگیری هر زبان برنامه نویسی، سایت خودش و خوندن داکیومنت های مرجع اون زبان هستش، بعد از خوندن این مقاله میتونید برای اطلاعات بیشتر به اینجا مراجعه کنید.
دوست برنامه نویسی من، برای خوندن مقالات تخصصی اندروید، میتونی به سایت ترولرن هم مراجعه کنی