본문 바로가기

Study/Kotlin

Kotlin 기본 문법 따라하기 - 2. BasicType

Kotlin 기본 문법 따라하기

 

Basic Types: Numbers, Strings, Arrays - Kotlin Programming Language

 

kotlinlang.org

package com.kotlintest.test

import java.awt.SystemColor.text
import javax.xml.bind.DatatypeConverter.printDouble

class BasicType {

    fun main() {

        val one = 1 // Int
        val threeBillion = 3000000000 // Long
        val oneLong = 1L // Long
        val oneByte: Byte = 1

        val pi = 3.14 // Double
        val e = 2.7182818284 // Double
        val eFloat = 2.7182818284f // Float, actual value is 2.7182817


        printDouble(e)
//        printDouble(one) // Error: Type mismatch


        val oneMillion = 1_000_000
        val creditCardNumber = 1234_5678_9012_3456L
        val socialSecurityNumber = 999_99_9999L
        val hexBytes = 0xFF_EC_DE_5E
        val bytes = 0b11010010_01101001_10010100_10010010


        val a: Int = 10000
        println("a == a : ${a == a}") // Prints 'true'
        println("a === a : ${a === a}") // Prints 'true'

        val boxedA: Int? = a
        val anotherBoxedA: Int? = a
        println("boxedA == anotherBoxedA : ${boxedA == anotherBoxedA}") // Prints 'true'
        println("boxedA === anotherBoxedA : ${boxedA === anotherBoxedA}") // !!!Prints 'false'!!!


        val byte: Byte = 1 // OK, literals are checked statically
        val iBate: Int = byte.toInt()
        println("byte : ${byte}")
        println("iBate : ${iBate}")


        val intArray: IntArray = intArrayOf(1, 2, 3);
        val intArray5 : IntArray = IntArray(5)
        val intArray5_init : IntArray = IntArray(5) { 42 }


        println("intArray : ${intArray[0]} ${intArray[1]} ${intArray[2]}")
        println("intArray5 - size : ${intArray5.size}")
        println("intArray5_init[0] : ${intArray5_init[0]}")


        val str: String = "ssing"
        for (c in str) {
            print("${c} ")
        }
        println("")


        val s = "abc" + 1
        println(s + "def")


        val hello = "Hello, world!\n"
        print(hello)


        val textFor = """
    for (c in "foo")
        print(c)
"""
        println(textFor)


        val text = """
    |Tell me and I forget.
    |Teach me and I remember.
    |Involve me and I learn.
    |(Benjamin Franklin)
    """.trimMargin()
        println(text)


        val price = """
${'$'}9.99
"""
        println(price)

    }

    fun printDouble (d: Double) {
        println(d)
    }

}

 

2.7182818284
a == a : true
a === a : true
boxedA == anotherBoxedA : true
boxedA === anotherBoxedA : false
byte : 1
iBate : 1
intArray : 1 2 3
intArray5 - size : 5
intArray5_init[0] : 42
s s i n g 
abc1def
Hello, world!

    for (c in "foo")
        print(c)

Tell me and I forget.
Teach me and I remember.
Involve me and I learn.
(Benjamin Franklin)

$9.99