مقالات

نوع داده ها در کاتلین : آموزش کاتلین (قسمت 6)

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

راستی میدونستی ما تو سایت ترولرن یه دوره رایگان آموزش برنامه نویسی کاتلین بصورت مقاله محور داریم، این لیست آموزش‌های رایگان ما هستش حتما ببین چون کل کاتلین رو بصورت کاملا رایگان داریم آموزش می‌دیم.

 

نوع داده ها در کاتلین

در کاتلین نوع داده‌ها از مقدار آن تشخیص داده می‌شود و نیازی نیست نوع داده را تعیین کنیم:

val myNum = 5             // Int
val myDoubleNum = 5.99    // Double
val myLetter = 'D'        // Char
val myBoolean = true      // Boolean
val myText = "Hello"      // String

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

val myNum: Int = 5                // Int
val myDoubleNum: Double = 5.99    // Double
val myLetter: Char = 'D'          // Char
val myBoolean: Boolean = true     // Boolean
val myText: String = "Hello"      // String

گاهی اوقات هم هست که نیاز داریم نوع داده را مشخص کنیم، در مقالات بعدی در مورد اینکه چه زمانی باید نوع داده‌ها را مشخص کنیم بیشتر یاد می‌گیریم.

انواع داده‌ها در کاتلین شامل گروه‌های زیر است:

  • Numbers یا ارقام
  • Characters یا کاراکترها
  • Booleans یا بولین‌ها
  • Strings یا رشته‌ها
  • Arrays یا آرایه‌ها

ارقام در کاتلین

اعداد و ارقام در کاتلین را میتوانیم به دو گروه تقسیم کنیم ، اعداد صحیح و اعداد اعشاری

انواع معتبر اعداد صحیح عبارتند از Byte، Short، Int و Long.

و برای اعداد اعشاری نیز دو نوع وجود دارد، Float و Double.

نکته: اگر نوع یک متغیر  را تعیین نکنیم،برای اعداد صحیح اغلب int و برای اعداد اعشاری double در نظر گرفته می‌شود.

 

انواع عدد صحیح در کاتلین

  • بایت یا Byte: این نوع داده میتواند اعداد صحیح بین 128- تا 127 را در خود جای دهد.
  • Short: این نوع داده می‌تواند اعداد صحیح بین 32768- تا 32767 را در خود جای دهد.
  • Int: این نوع داده می‌تواند اعداد صحیح بین 2147483648- تا 2147483647 را در خود جای دهد.
  • Long: این نوع داده می‌تواند اعداد صحیح بین 9223372036854775808- تا 9223372036854775808 را در خود جای دهد، به این نکته دقت کنید که از این متغیر زمانی استفاده کنید که int به اندازه کافی بزرگ نباشد تا بتواند مقدار را ذخیره کند. اعداد Long را با یک حرف L بعد از عدد آن مشخص میکنیم:
val myNum: Long = 15000000000L
println(myNum)

فرق Int و Long:

در مثال زیر دقت کنید، عدد های تا مقدار 2147483647 یک Int هستند و بعد از آن دیگر در Int جا نمی‌شوند و Long هستند:

val myNum1 = 2147483647  // Int
val myNum2 = 2147483648L  // Long

انواع عدد اعشاری در کاتلین

Float : اعداد اعشاری بین 3.4e−038 تا 3.4e+038 را در خود جای می‌دهد. شما باید در انتهای یک مقدار Float از کاراکتر F استفاده کنید:

val myNum: Float = 5.75F
println(myNum)

Double: اعداد اعشاری بین 1.7e−308 تا 1.7e+038 را در خود جای می‌دهد.

 

Float یا Double؟

دقت محاسبه‌ی این دو مقدار با هم متفاوت است، دقت Float تنها شش تا هفت رقم اعشار است درحالی‌که متغیرهای Double دقتی در حدود 15 رقم اعشار دارند، بنابراین استفاده از Double برای اکثر محاسبات ایمن‌تر و دقیق‌تر است.

 

نماد علمی

برای نمایش اعداد با استفاده از نماد علمی از e یا E استفاده می‌شود که به معنای توان 10 عدد بعد از آن است، برای مثال 12E4 به معنای 12 ضرب در 10 به توان 4 است که یعنی عدد 120000 (برای راحتی کار میتوان گفت هر عددی بعد از E بود، به همان تعداد 0 به انتهای عدد اضافه می‌شود مثلا در مثال بالا که بعد از E عدد 4 بود، 4 صفر به انتهای عدد اضافه کرد)

مثالی برای نماد علمی:

val myNum1: Float = 35E3F
val myNum2: Double = 12E4
println(myNum1)
println(myNum2)

Booleans

که فقط می‌تواند دو مقدار true و false را داشته باشد به معنای درست یا غلط، این متغیر بیشتر برای تست شرطی استفاده می‌شود.

 

Characters

برای ذخیره یک کاراکتر استفاده می‌شود که باید بین دوتا سینگل کوتیشن قرار بگیرد مانند مثال زیر:

val myGrade: Char = 'A'
println(myGrade)

برعکس جاوا، در کاتلین نمی‌توانید از مقدار ASCII برای نمایش کاراکتر استفاده کنید، مثلا مقدار 66 در جاوا کاراکتر B را تولید می‌کند اما در کاتلین کد زیر باعث ایجاد خطا خواهد شد:

val myLetter: Char = 66
println(myLetter) // Error

Strings

برای دنباله‌ای از کاراکترها (متن) استفاده می‌شود. مقادیر یک رشته باید با دوعدد دابل کوتیشن احاطه شوند. مثالی از String:

val myText: String = "Hello World"
println(myText)

 

تبدیل نوع در کاتلین

زمانی که یک نوع داده را به نوع داده‌ی دیگری تبدیل می‌کنید، تبدیل نوع اتفاق می‌افتد. در کاتلین تبدیل نوع عددی با جاوا متفاوت است، برای مثال تبدیل از نوع Int به نوع Long با کد زیر امکان‌پذیر است:

val x: Int = 5
val y: Long = x.toLong()
println(y)

و کد زیر در کاتلین با خطا مواجه می‌شود:

val x: Int = 5 val y: Long = x
println(y) // Error: Type mismatch

برای تبدیل یک نوع داده‌ی عددی به نوع دیگر در کاتلین باید از یکی از توابع زیر استفاده کنید:

  • toByte()
  • toShort()
  • toInt()
  • toLong()
  • toFloat()
  • toDouble()
  • toChar()

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

‫0/5 ‫(0 نظر)
محمد زارع

از سال 94 بصورت جدی وارد عرصه برنامه نویسی اندروید شدم، در شرکت‌ها و استارت‌آپ‌های زیادی مشغول به کار بوده و تجربه کسب کرده ام و در این سایت قصد دارم این تجربه را به اشتراک بگذارم

Recent Posts

بهینه‌سازی عملکرد اپلیکیشن‌های اندروید: راهنمای جامع و کاربردی

بهینه‌سازی عملکرد اپلیکیشن‌های اندروید یکی از مهم‌ترین فاکتورهایی است که برای کاربران در دنیای امروز…

3 ماه ago

سوالات مصاحبه‌ی استخدامی کاتلین همراه با جواب(قسمت چهارم)

مصاحبه‌ی استخدامی کاتلین یک فرصت برای ارزیابی مهارت‌ها و توانایی‌های یک برنامه‌نویس در توسعه اپلیکیشن‌های…

4 ماه ago

سوالات مصاحبه استخدام زبان کاتلین همراه با جواب(قسمت سوم)

مصاحبه استخدام زبان کاتلین یک فرصت برای ارزیابی مهارت‌ها و توانایی‌های یک برنامه‌نویس در توسعه…

4 ماه ago

سوالات مصاحبه استخدام کاتلین همراه با جواب(قسمت دوم)

مصاحبه استخدام کاتلین یک فرصت برای ارزیابی مهارت‌ها و توانایی‌های یک برنامه‌نویس در توسعه اپلیکیشن‌های…

4 ماه ago

سوالات مصاحبه استخدامی کاتلین همراه با جواب(قسمت اول)

مصاحبه استخدامی کاتلین یک فرصت برای ارزیابی مهارت‌ها و توانایی‌های یک برنامه‌نویس در توسعه اپلیکیشن‌های…

5 ماه ago

نوتیفیکیشن در اندروید: نحوه کار با آن در کاتلین

نوتیفیکیشن در اندروید امروزه یکی از قابلیت‌های مهم و پرکاربرد در اپلیکیشن‌های اندروید هستند. با…

5 ماه ago