خروجی در کاتلین
برای چاپ مقادیر در خروجی استاندارد از توابع ()println و ()print میتوانید استفاده کنید. منظور از خروجی استاندارد، صفحه نمایش است.
مثال:
fun main(args : Array<String>) { println(“Kotlin is interesting.”) }
خروجی:
Kotlin is interesting.
در اینجا ()println رشتۀ موردنظر را در خروجی نمایش داده یا اصطلاحاً چاپ میکند.
فرق ()println و ()print
- ()print: رشتۀ دریافتی را چاپ میکند؛
- ()println: همانند ()print رشتۀ دریافتی را چاپ کرده ولی نشانگر را به سطر بعدی منتقل میکند. در واقع بعد از چاپ رشته، یک خط جدید ایجاد میکند.
در هنگام استفاده از ()println، کاتلین به صورت داخلی تابع ()System.out.println را فرخوانی میکند. این در واقع همان تابع اصلی چاپ خروجی در جاوا است. کاربران Intellij IDEA میتوانند با قرار دادن کرسر ماوس روی println و رفتن به منوی navigate>Declaration (کلید میانبر: Ctrl+B مک: Cmd+B) فایل Console.kt را باز کنند و فرخوانی داخلی این متد را به چشم خود ببینند. به همین صورت در هنگام استفاده از تابع ()print، تابع ()System.out.print فرخوانی میشود.
مثال ۱: ()print و ()println:
fun main(args : Array<String>) { println(“۱٫ println “); println(“۲٫ println “); print(“۱٫ print “); print(“۲٫ print”); }
خروجی:
۱٫ println ۲٫ println ۱٫ print 2. print
مثال ۲: چاپ متغیرها و لیترالها
fun main(args : Array<String>) { val score = 12.3 println(“score”) println(“$score”) println(“score = $score”) println(“${score + score}”) println(12.3) }
خروجی:
score ۱۲٫۳ score = 12.3 ۲۴٫۶ ۱۲٫۳
ورودی در کاتلین
خب، حال چطور دادهها را از کاربر دریافت کنیم؟ در حالت استاندارد برای دریافت متن از کاربر تابع ()readline را استفاده میکنیم.
مثال ۳: چاپ متن وارد شده توسط کاربر
fun main(args: Array<String>) { print(“Enter text: “) val stringInput = readLine()!! println(“You entered: $stringInput”) }
خروجی:
Enter text: Hmm, interesting! You entered: Hmm, interesting!
شما میتوانید رشتۀ ورودی که از نوع String است را به کمک توابع تبدیل نوع مثل toInt به نوع مورد نظر تبدیل کنید.
در صورتی که بخواهید انواع دیگری غیر از رشته دریافت کنید باید از شی Scanner استفاده نمایید. برای این کار ابتدا باید کلاس Scanner را از کتابخانۀ استاندارد جاوا ایمپورت کنید. به این صورت:
import java.util.Scanner
سپس با ساخت یک شی از این کلاس اقدام به دریافت داده از ورودی نمایید.
val reader = Scanner(System.`in`)
اکنون reader آماده دریافت داده از کاربر است.
مثال ۴: دریافت اعداد Integer از کاربر
import java.util.Scanner fun main(args: Array<String>) { // Creates an instance which takes input from standard input (keyboard) val reader = Scanner(System.`in`) print(“Enter a number: “) // nextInt() reads the next integer from the keyboard var integer:Int = reader.nextInt() println(“You entered: $integer”) }
خروجی:
Enter a number: -12 You entered: -12
در کد بالا شی reader از کلاس Scanner ایجاد شده است. سپس با فراخوانی متد ()nextInt ورودی عددی از نوع Int از کاربر دریافت و در متغیر Integer ذخیره میشود. برای دریافت سایر انواع نیز متدهای دیگری همچون ()nextLong(), nextFloat(), nextDouble(), nextBoolean وجود دارند.
بدون دیدگاه