原文: https://www.programiz.com/kotlin-programming/input-output

在本文中,您将学习在屏幕上显示输出,并在 Kotlin 中接受用户的输入。

Koltin 输出

您可以使用println()print()函数将输出发送到标准输出(屏幕)。 让我们举个例子:

  1. fun main(args : Array<String>) {
  2. println("Kotlin is interesting.")
  3. }

运行该程序时,输出为:

  1. Kotlin is interesting.

此处,println()输出字符串(引号内)。


println()print()之间的区别

  • print() - 打印引号内的字符串。
  • println() - 打印引号内的字符串,类似于print()函数。 然后光标移动到下一行的开头。

使用println()函数时,它将在内部调用System.out.println()函数。 (System.out.println()用于将输出打印到 Java 屏幕中)。

如果您使用的是 IntelliJ IDEA,请将鼠标光标放在println旁边,然后转到Navigate > Declaration(快捷键:Ctrl + B。对于 Mac:Cmd + B),这将打开Console.kt(声明文件)。 您会看到println()函数正在内部调用System.out.println()

同样,当您使用print()函数时,它将调用System.out.print()函数。


示例 1:print()println()

  1. fun main(args : Array<String>) {
  2. println("1\. println ");
  3. println("2\. println ");
  4. print("1\. print ");
  5. print("2\. print");
  6. }

运行该程序时,输出为:

  1. 1\. println
  2. 2\. println
  3. 1\. print 2\. print

示例 2:打印变量和字面值

  1. fun main(args : Array<String>) {
  2. val score = 12.3
  3. println("score")
  4. println("$score")
  5. println("score = $score")
  6. println("${score + score}")
  7. println(12.3)
  8. }

运行该程序时,输出为:

  1. score
  2. 12.3
  3. score = 12.3
  4. 24.6
  5. 12.3

Kotlin 输入

在本节中,您将学习从用户那里接受输入。

要在 Kotlin 中读取一行字符串,可以使用readline()函数。


示例 3:打印用户输入的字符串

  1. fun main(args: Array<String>) {
  2. print("Enter text: ")
  3. val stringInput = readLine()!!
  4. println("You entered: $stringInput")
  5. }

运行该程序时,输出为:

  1. Enter text: Hmm, interesting!
  2. You entered: Hmm, interesting!

可以使用readLine()函数将输入作为字符串,然后将其显式转换为其他数据类型(如Int)的值。


如果要输入其他数据类型,则可以使用Scanner对象。

为此,您需要使用以下方法从 Java 标准库中导入Scanner类:

  1. import java.util.Scanner

然后,您需要从此类创建Scanner对象。

  1. val reader = Scanner(System.`in`)

现在,reader对象用于接收用户的输入。


示例 4:从用户获取整数输入

  1. import java.util.Scanner
  2. fun main(args: Array<String>) {
  3. // Creates an instance which takes input from standard input (keyboard)
  4. val reader = Scanner(System.`in`)
  5. print("Enter a number: ")
  6. // nextInt() reads the next integer from the keyboard
  7. var integer:Int = reader.nextInt()
  8. println("You entered: $integer")
  9. }

运行该程序时,输出为:

  1. Enter a number: -12
  2. You entered: -12

此处,创建了Scanner类的reader对象。 然后,调用nextInt()方法,该方法从用户那里获取整数输入,该整数输入存储在变量integer中。


要从用户获取LongFloatdoubleBoolean输入,可以分别使用nextLong()nextFloat()nextDouble()nextBoolean()方法。