Kotlin

[Kotlin Study] 1. 기본 코틀린 문법

pearl.k 2023. 9. 13. 15:31

 

1. 상수, 변수 선언

fun main(args: Array<String>) {
    
    val pi : Double = 3.141592 // 상수 선언 및 값 할당
    println(pi) // val cannot be reassigned
    
    var age : Int = 24 // 변수 선언 및 값 할당
    println(age)
    age = 25
    println(age)
    
}

 

 

2. Kotlin 자료형

  • Byte : 정수형
  • Short : 정수형
  • Int : 정수형
  • Long : 정수형, 마지막에 L 붙이기
  • Float : 실수형, 마지막에 F 붙이기
  • Double

+ Byte, Short 같은 것 외에 기본적으로 정수는 Int로 받아들임, Long과 Float는 뒤에 각각 L, F 가 붙기 때문에 자동적으로 형을 추론해준다

  • Char : 글자 1개만 할당 가능, 작은 따옴표로 작성 (자동으로 형 추론 가능)
  • String : 긴 문자열 저장, 큰 따옴표로 작성 (자동으로 형 추론 가능)
  • Boolean : T/F 값만 저장, 자동으로 형 추론 가능
  • Array : Array<String> 이런식으로 선언 후 arrayOf 함수를 사용하여 값을 넣는다.
fun main(args: Array<String>) {
    
    var mArray : Array<String> = arrayOf("Kotlin", "0", "1", "2")
    println(mArray[0])
    println(mArray.get(1))
    println(mArray.size)
    
}

 

3. 함수

-  리턴 값이 없는 함수 (Unit 은 생략 가능)

fun main(args: Array<String>) {
    printStudentInfo("Pearl", 24)
    printStudentInfo("Pearl", 25)
}

fun printStudentInfo(name : String, age : Int) : Unit {
    //Unit은 return type이 없는 것을 의미한다
    println("Student Name: " + name)
    println("Student Age : " + age)
}

-  리턴 값이 있는 함수

fun addNum(n1:Int, n2:Int) : Int {
    return n1 + n2
}

 

4. 스트링 템플릿

$를 사용하고 그 뒤에 변수 명을 넣어주면 된다.

fun main(args: Array<String>) {
    val price = 2000
    val tax = 200
    val originalPrice = "Original : $price"
    val taxPrice = "Tax : $tax"
    
    println(originalPrice)
    println(taxPrice)
}

 

5. 반복문 for, while

fun main(args: Array<String>) {
    
    val numRange : IntRange = 1 .. 5
    println(numRange.contains(2))
    println(numRange.contains(10))
    
    val charRange : CharRange = 'a' .. 'e'
    println(charRange.contains('a'))
    println(charRange.contains('z'))
    
    // 1. For
    for (i in 1 .. 5){
        println(i)
    }
 
	for(i in 1 until 10){
        println(i)
    }
    
    for(i in 10 downTo 1){
        println(i)
    }
    
    //2. While
    var num = 1
    while(num < 5){
        println("current : $num")
        num++
    }
    
   
    do {
        println("current : $num")
        num++
    } while(num < 5)

 

6. 조건문 if, when

fun main() {
    val examResult = isPass(50)
    println("Result:$examResult")
}

fun isPass(examScore : Int) : Boolean{
    if (examScore >= 60){
        return true
    } else {
        return false
    }
}
fun main() {
    val examResult = getGrade(91)
    println("Result:$examResult")
}

fun getGrade(score : Int) : Char{
    when(score){
        in 0 .. 40 -> return 'D'
        in 41 .. 70 -> return 'C'
        in 71 .. 90 -> return 'B'
        in 91 .. 100 -> return 'A'
        else -> return 'F'
    }
}