انواع متغیرهای پایه در کاتلین

4 سال پیش
متغیرهای پایه در کاتلین

انواع متغیرهای پایه در کاتلین

در این مطلب از وب سایت آموزش برنامه نویسی سورس باران، شما با متغیرهای پایه در کاتلین، نحوه ایجاد آنها و انواع داده های پایه که کاتلین برای ایجاد متغیرها پشتیبانی می کند، آشنا خواهید شد.

همانطور که می دانید، یک متغیر مکانی در حافظه (محل ذخیره) برای نگهداری داده ها است.

برای نشان دادن منطقه ذخیره سازی، به هر متغیر باید یک نام (شناسه) منحصر به فرد داده شود. درباره نحوه نامگذاری یک متغیر در کاتلین بیشتر بیاموزید؟

چگونه متغیر را در کاتلین اعلام کنیم؟

برای اعلام متغیر در کاتلین، از کلمه کلیدی var  یا val  استفاده می شود. به عنوان مثال:

var language = "French"
val score = 95

تفاوت در استفاده از var  یا val  بعداً در مقاله مورد بحث قرار گرفت. در حال حاضر ، بیایید بر اعلان متغیر تمرکز کنیم.

در اینجا، language زبان یک متغیر از نوع رشته String است، و نمره score یک متغیر از نوع Int است. نیازی نیست نوع متغیرهای پایه در کاتلین را مشخص کنید. کاتلین تلویحاً این کار را برای شما انجام می دهد. کامپایلر این را با بیان مقداردهنده اولیه می داند (“فرانسوی” “French” یک رشته  String است و ۹۵ یک مقدار صحیح در برنامه فوق است). به این استنباط نوع در برنامه نویسی می گویند.

اگر بخواهید می توانید صریحاً نوع آن را مشخص کنید:

var language: String = "French"
val score: Int = 95

 

ما متغیر را در حین اعلامیه در مثالهای بالا مقداردهی اولیه کردیم. با این حال، لازم نیست این کار را انجام دهید. می توانید متغیر را اعلام کرده و نوع آن را در یک عبارت مشخص کنید، و متغیر را در دستور دیگری بعداً در برنامه مقداردهی اولیه کنید.

var language: String      // variable declaration of type String
... .. ...
language = "French"       // variable initialization

val score: Int          // variable declaration of type Int 
... .. ...
score = 95             // variable initialization

در اینجا چند نمونه وجود دارد که منجر به خطا می شوند.

var language           // Error 
language = "French"

 

در اینجا، نوع متغیر language زبان به صراحت مشخص نشده است و همچنین متغیر در حین اعلام مقدار دهی اولیه نمی شود.

var language: String
language = 14         // Error

در اینجا، ما سعی می کنیم ۱۴ (مقدار عدد صحیح) را به متغیر از نوع مختلف (String) اختصاص دهیم.

تفاوت بین var و val در برنامه نویسی کاتلین

  • val (مرجع غیرقابل تغییر) – متغیر اعلام شده با استفاده از کلمه کلیدی val پس از اختصاص مقدار قابل تغییر نیست. مشابه متغیر نهایی در جاوا است.
  • var (مرجع قابل تغییر) – متغیر اعلام شده با استفاده از کلمه کلیدی var می تواند بعداً در برنامه تغییر کند. مربوط به متغیر عادی جاوا است.

در اینجا چند نمونه ذکر شده است:

var language = "French"
language = "German"

در اینجا، متغیر زبان language به آلمانی German تغییر می یابد. از آنجا که متغیر با استفاده از var اعلام می شود ، این کد به خوبی عمل می کند.

val language = "French"
language = "German"      // Error

 

در مثال بالا نمی توانید متغیر زبان  language را به آلمانی German اختصاص دهید زیرا متغیر با استفاده از val اعلام می شود.

اکنون، شما می دانید که متغیرهای پایه در کاتلین چیست، وقت آن فرا رسیده است که مقادیر مختلفی را که یک متغیر کاتلین می تواند بدست آورد، فرا بگیرید.

انواع اساسی کاتلین

کاتلین یک زبان بصورت ثابت تایپ شده مانند جاوا است. یعنی نوع متغیر در طول زمان کامپایل شناخته شده است. مثلا،

val language: Int
val marks = 12.3

 

در اینجا، کامپایلر می داند که زبان language از نوع Int است ، و علائم marks از نوع دوتایی Double قبل از زمان کامپایل است.

انواع داخلی داده ها در کاتلین را می توان به صورت زیر دسته بندی کرد:

  • اعداد
  • کاراکترها
  • بولی ها (داده منطقی)
  • آرایه ها

 

نوع اعداد در برنامه نویسی کاتلین

اعداد مشابه جاوا هستند. ۶ نوع داخلی وجود دارد که اعداد را نشان می دهد.

  • بایت (Byte)
  • عدد صحیح (Short)
  • عدد صحیح (Int)
  • عدد صحیح (Long)
  • ممیز شناور (Float)
  • ممیز شناور   (Double)

 

۱- بایت (Byte) در برنامه نویسی کاتلین

نوع داده بایت می تواند مقادیری از -۱۲۸ تا ۱۲۷ داشته باشد .

اگر مطمئن باشید که مقدار یک متغیر در [-۱۲۸ ، ۱۲۷] خواهد بود، به جای Int یا سایر داده های عدد صحیح استفاده می شود تا حافظه را ذخیره کند.

مثال:

fun main(args : Array<String>) {
    val range: Byte = 112
    println("$range")

    // The code below gives error. Why?
    // val range1: Byte = 200
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۱۱۲

 

۲- عدد صحیح (Short)

نوع داده کوتاه می تواند مقادیری از -۳۲۷۶۸ تا ۳۲۷۶۷ داشته باشد.

اگر مطمئن باشید که مقدار متغیر در محدوده [-۳۲۷۶۸ ، ۳۲۷۶۷] خواهد بود، برای ذخیره و صرفه جویی در حافظه به جای انواع دیگر داده های عدد صحیح استفاده می شود.

مثال:

fun main(args : Array<String>) {

    val temperature: Short = -11245
    println("$temperature")
}

 

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

-۱۱۲۴۵

 

۳– عدد صحیح (Int)

نوع داده Int می تواند مقادیری از  -۲۳۱ تا ۲۳۱-۱ داشته باشد.

مثال:

fun main(args : Array<String>) {

    val score: Int =  100000
    println("$score")
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۱۰۰۰۰۰

شما بدون تعیین صریح نوع آن یک عدد صحیح بین از  -۲۳۱ تا ۲۳۱-۱ به یک متغیر اختصاص می دهید، متغیر از نوع Int خواهد بود. به عنوان مثال،

fun main(args : Array<String>) {

   // score is of type Int
    val score = 10
    println("$score")
}

اگر از IntelliJ IDEA استفاده می کنید، می توانید مکان نما را درون متغیر قرار دهید و Ctrl + Shift + P را فشار دهید تا نوع آن را ببینید.

متغیرهای پایه در کاتلین

۴- عدد صحیح  (Long)

نوع داده  Longمی تواند مقادیری از -۲۶۳ تا ۲۶۳-۱ داشته باشد.

مثال:

fun main(args : Array<String>) {

    val highestScore: Long = 9999
    println("$highestScore")
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۹۹۹۹

اگر یک مقدار صحیح بزرگتر از ۲۳۱-۱  یا کمتر از -۲۳۱ را به یک متغیر اختصاص دهید (بدون مشخص کردن نوع دقیق آن) ، متغیر از نوع Long خواهد بود. به عنوان مثال ،

val distance = 10000000000  // distance variable of type Long

به همین ترتیب ، می توانید از حرف بزرگ L برای تعیین متغیر از نوع Long استفاده کنید. به عنوان مثال،

val distance = 10000000000  // distance variable of type Long

۵- ممیز شناور    (Double)

نوع Double یک ممیز شناور ۶۴ بیتی با دقت دوبرابری است.

مثال:

fun main(args : Array<String>) {

    // distance is of type Double
    val distance = 999.5
    println("$distance")
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۹۹۹٫۵

ممیز شناور (Float)

نوع داده Float یک ممیز شناور با دقت ۳۲ بیت است.

fun main(args : Array<String>) {

    // distance is of type Float
    val distance = 19.5F
    println("$distance")
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۱۹٫۵

توجه داشته باشید که، ما در برنامه فوق به جای ۱۹٫۵ از  ۱۹٫۵Fاستفاده کرده ایم. دلیل آن این است که ۱۹٫۵ یک مقدار Double است و شما نمی توانید مقدار Double را به یک متغیر از نوع Float اختصاص دهید.

برای اینکه به کامپایلر بگویید که ۱۹٫۵  را با Float در نظر بگیرد ، باید در انتها از F استفاده کنید.

اگر مطمئن نیستید که به یک متغیر در برنامه چه مقدار عددی اختصاص می یابد، می توانید آن را به عنوان Number type تعیین کنید. با این کار می توانید مقدار صحیح و ممیز شناور را به یک متغیر اختصاص دهید. به عنوان مثال:

fun main(args : Array<String>) {

    var test: Number = 12.2
    println("$test")

    test = 12
    // Int smart cast from Number
    println("$test")

    test = 120L
    // Long smart cast from Number
    println("$test")
}

 

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

۱۲٫۲
۱۲
۱۲۰

Char در کاتلین

برای نمایش یک کاراکتر در کاتلین ، از انواع Char استفاده می شود.

برخلاف جاوا، نمی توان با انواع Char به عنوان عدد رفتار کرد.

fun main(args : Array<String>) {

    val letter: Char
    letter = 'k'
    println("$letter")
}

هنگامی که برنامه را اجرا می کنید، چیزی که خروجی نشان می دهد:

k

 

در جاوا می توانید کارهای زیر را انجام دهید:

char letter = 65;

 

با این حال، کد زیر خطایی در کاتلین ایجاد می کند.

var letter: Char = 65  // Error

 

بولی ها در برنامه نویسی کاتلین

نوع داده بولی دارای دو مقدار ممکن است، درست یا نادرست.

مثال:

fun main(args : Array<String>) {

    val flag = true
    println("$flag")
}

 

از بولی ها در دستورات شرطی استفاده می شود (در فصل بعد بحث خواهد شد).

آرایه های کاتلین

آرایه ظرفی است که داده ها (مقادیر) از یک نوع واحد را در خود نگه می دارد. به عنوان مثال، می توانید آرایه ای ایجاد کنید که بتواند ۱۰۰ مقدار از نوع Int را در خود جای دهد.

در کاتلین ، آرایه ها توسط کلاس Array نمایش داده می شوند. کلاس دارای توابع get ، set، ویژگی size و چند توابع عضو مفید دیگر است.

رشته ها در برنامه نویسی کاتلین

در کاتلین، رشته ها توسط کلاس String نمایش داده می شوند. اصطلاحات رشته ای مانند ” “this is a string” به عنوان نمونه ای از این کلاس پیاده سازی می شود.

 

منبع.

برای اطلاعات بیشتر از دیگر آموزش های برنامه نویسی ما به وب سایت و اینستاگرام ما مراجعه کنید

 

لیست جلسات قبل آموزش برنامه نویسی کاتلین

  1. معرفی کاتلین،  Kotlin Hello World – اولین برنامه کاتلین
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه