๐Ÿ”ฐInput/Output

๐Ÿ’พ ็จ‹ๅผ๏ผšreplit โŸฉ readLine()

// ่ซ‹ไฝฟ็”จ่€…่ผธๅ…ฅ่ณ‡ๆ–™
// ้ ่จญๅ•้กŒ๏ผšใ€Œ่ซ‹่ผธๅ…ฅไธ€็ต„ๆ•ธๅญ—๏ผšใ€
func getInput(from question: String = "่ซ‹่ผธๅ…ฅไธ€็ต„ๆ•ธๅญ—๏ผš ") {

    // 1. ๅ…ˆ้กฏ็คบๅ•้กŒ
    print(question, terminator: "")
    
    // 2. ็ขบๅฎš่ผธๅ…ฅๆ˜ฏๆ•ดๆ•ธ
    guard 
        let input = readLine(), // 2.1 ๅ…ˆ็ขบๅฎšๆœ‰่ผธๅ…ฅ
        let n     = Int(input)  // 2.2 ๅœจ็ขบๅฎš่ผธๅ…ฅ็š„ๆ˜ฏๆ•ดๆ•ธ
    else {
        // 2.3 ๅฆ‚ๆžœ่ผธๅ…ฅไธๆญฃ็ขบ๏ผŒๅฐฑ้กฏ็คบ่ญฆ่ชž
        print("ๆ‹œ่จ—โ—๏ธ่ซ‹่ผธๅ…ฅๆ•ดๆ•ธๅฅฝๅ—Ž ๐Ÿ™„")
        // 2.4 ็„ถๅพŒๅ†ๅ•ไธ€ๆฌก
        return getInput(from: question)
        // โญ ๆณจๆ„๏ผš`return` ๆ˜ฏๅฟ…่ฆ็š„๏ผŒๅฆๅ‰‡ๆœƒ็”ข็”Ÿ๏ผš
        // โ›” error: 'guard' body must not fall through
    }
    
    // 3. ็จ‹ๅผๅฆ‚ๆžœๅˆฐ้€™่ฃก๏ผŒๅฐฑ่กจ็คบ่ผธๅ…ฅ็š„ๆ˜ฏๆ•ดๆ•ธ๏ผŒ่€Œไธ”ๅฏไปฅ็”จ n ่กจ็คบ
    print("ๆ‚จ่ผธๅ…ฅ็š„ๆ•ธๅญ—ๆ˜ฏ \(n)")
}

// ๅŸท่กŒ็จ‹ๅผ
getInput()

Last updated