Освоение сканера в Kotlin: руководство для начинающих по чтению ввода

Если вы новичок в Kotlin и хотите научиться считывать вводимые пользователем данные с консоли с помощью сканера, вы попали по адресу! В этом руководстве для начинающих мы рассмотрим различные методы использования класса Scanner в Kotlin для эффективного чтения входных данных. Мы рассмотрим все: от базового чтения входных данных до более продвинутых методов. Итак, приступим!

Метод 1: чтение строк
Чтобы прочитать строку из консоли, вы можете использовать метод nextLine() класса Scanner. Вот пример:

import java.util.Scanner
fun main() {
    val scanner = Scanner(System.`in`)
    print("Enter your name: ")
    val name = scanner.nextLine()
    println("Hello, $name!")
}

Метод 2: чтение целых чисел
Чтобы читать целые числа из консоли, вы можете использовать метод nextInt() класса Scanner. Вот пример:

import java.util.Scanner
fun main() {
    val scanner = Scanner(System.`in`)
    print("Enter your age: ")
    val age = scanner.nextInt()
    println("You are $age years old.")
}

Метод 3: чтение чисел с плавающей запятой
Чтобы читать числа с плавающей запятой из консоли, вы можете использовать метод nextDouble() класса Scanner. Вот пример:

import java.util.Scanner
fun main() {
    val scanner = Scanner(System.`in`)
    print("Enter the temperature: ")
    val temperature = scanner.nextDouble()
    println("The temperature is $temperature degrees.")
}

Метод 4: чтение логических значений
Чтобы прочитать логические значения из консоли, вы можете использовать метод nextBoolean() класса Scanner. Вот пример:

import java.util.Scanner
fun main() {
    val scanner = Scanner(System.`in`)
    print("Are you ready? (true/false): ")
    val ready = scanner.nextBoolean()
    if (ready) {
        println("Let's get started!")
    } else {
        println("Take your time.")
    }
}

Метод 5: использование разделителей
Вы также можете использовать разделители для чтения входных данных с определенными шаблонами. Метод useDelimiter() класса Scanner позволяет вам установить собственный разделитель. Вот пример:

import java.util.Scanner
fun main() {
    val scanner = Scanner(System.`in`)
    scanner.useDelimiter(",\\s*") // Sets the delimiter to comma followed by optional whitespace
    print("Enter a list of numbers separated by commas: ")
    while (scanner.hasNextInt()) {
        val number = scanner.nextInt()
        println("Number: $number")
    }
}

Поздравляем! Вы узнали несколько методов использования класса Scanner в Kotlin для чтения пользовательского ввода с консоли. Мы рассмотрели чтение строк, целых чисел, чисел с плавающей запятой, логических значений и использование разделителей. Обладая этими знаниями, вы теперь можете создавать интерактивные приложения Kotlin, которые принимают ввод пользователя. Продолжайте практиковаться и изучать более сложные концепции, чтобы улучшить свои навыки работы с Kotlin!