lookiesmu / LOOKIE_FRONT_2020

2020 LOOKIE FRONT STUDY
0 stars 8 forks source link

I'M JUNGMIN KIM #5

Open j-miiin opened 4 years ago

j-miiin commented 4 years ago

๐Ÿ’œ Kotlin์˜ ์žฅ์ 

๐Ÿ’œ Kotlin์˜ ๊ธฐ๋ณธ ๋ฌธ๋ฒ•

  1. ๋ณ€์ˆ˜

    • val : ์ตœ์ดˆ๋กœ ์ง€์ •ํ•œ ๋ณ€์ˆ˜์˜ ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๋” ์ด์ƒ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†๋Š” ์ฝ๊ธฐ ์ „์šฉ ๋ณ€์ˆ˜

    • var : ์ตœ์ดˆ๋กœ ์ง€์ •ํ•œ ๋ณ€์ˆ˜์˜ ์ดˆ๊นƒ๊ฐ’์ด ์žˆ๋”๋ผ๋„ ๊ฐ’์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Œ

      val username: String = "Jungmin"

    • Kotlin์€ ์ž๋ฃŒํ˜•์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ๋ณ€์ˆ˜์— ํ• ๋‹น๋œ ๊ฐ’์„ ๋ณด๊ณ  ์•Œ์•„์„œ ์ž๋ฃŒํ˜•์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Œ

    • ๊ฐ’์„ ํ• ๋‹นํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ ค๋ฉด ์ž๋ฃŒํ˜•์„ ๋ฐ˜๋“œ์‹œ ์ง€์ •ํ•ด์•ผ ํ•จ

  2. ์ž๋ฃŒํ˜•

    • Kotlin์˜ ์ž๋ฃŒํ˜•์€ ์ฐธ์กฐํ˜• ์ž๋ฃŒํ˜•์„ ์‚ฌ์šฉ
    • ๋ถ€ํ˜ธ๊ฐ€ ์žˆ๋Š” ์ •์ˆ˜ ์ž๋ฃŒํ˜•
    ์ž๋ฃŒํ˜• ํฌ๊ธฐ
    Long 8๋ฐ”์ดํŠธ(64๋น„ํŠธ)
    Int 4๋ฐ”์ดํŠธ(32๋น„ํŠธ)
    Short 2๋ฐ”์ดํŠธ(16๋น„ํŠธ)
    Byte 1๋ฐ”์ดํŠธ(8๋น„ํŠธ)
    • ๋ถ€ํ˜ธ๊ฐ€ ์—†๋Š” ์ •์ˆ˜ ์ž๋ฃŒํ˜•
    ์ž๋ฃŒํ˜• ํฌ๊ธฐ
    ULong 8๋ฐ”์ดํŠธ(64๋น„ํŠธ)
    UInt 4๋ฐ”์ดํŠธ(32๋น„ํŠธ)
    UShort 2๋ฐ”์ดํŠธ(16๋น„ํŠธ)
    UByte 1๋ฐ”์ดํŠธ(8๋น„ํŠธ)
    • ์‹ค์ˆ˜ ์ž๋ฃŒํ˜•
    ์ž๋ฃŒํ˜• ํฌ๊ธฐ
    Double 8๋ฐ”์ดํŠธ(64๋น„ํŠธ)
    Float 4๋ฐ”์ดํŠธ(32๋น„ํŠธ)
    • ๋…ผ๋ฆฌ ์ž๋ฃŒํ˜•
    ์ž๋ฃŒํ˜• ํฌ๊ธฐ ๊ฐ’์˜ ๋ฒ”์œ„
    Boolean 1๋น„ํŠธ true, false
    • ๋ฌธ์ž ์ž๋ฃŒํ˜•
    ์ž๋ฃŒํ˜• ํฌ๊ธฐ
    Char 2๋ฐ”์ดํŠธ(16๋น„ํŠธ)
    • ๋ฌธ์ž์—ด ์ž๋ฃŒํ˜• : ๊ธฐ๋ณธํ˜•์— ์†ํ•˜์ง€ ์•Š๋Š” ๋ฐฐ์—ด ํ˜•ํƒœ๋กœ ๋˜์–ด ์žˆ๋Š” ํŠน์ˆ˜ํ•œ ์ž๋ฃŒํ˜•
  3. ํ•จ์ˆ˜

    • ํ•จ์ˆ˜์˜ ๊ตฌ์กฐ
    fun sum(a: Int, b: Int): Int {  
        var sum = a + b  
        return sum  
    }
    fun ํ•จ์ˆ˜ ์ด๋ฆ„([๋ณ€์ˆ˜ ์ด๋ฆ„: ์ž๋ฃŒํ˜•, ๋ณ€์ˆ˜ ์ด๋ฆ„: ์ž๋ฃŒํ˜•..]): [๋ฐ˜ํ™˜๊ฐ’์˜ ์ž๋ฃŒํ˜•] {  
        ํ‘œํ˜„์‹... 
        [return ๋ฐ˜ํ™˜๊ฐ’] 
    }
    1. fun ํ‚ค์›Œ๋“œ๋กœ ํ•จ์ˆ˜ ์„ ์–ธ ์‹œ์ž‘
    2. ํ•จ์ˆ˜ ์ด๋ฆ„
    3. ๋งค๊ฐœ๋ณ€์ˆ˜ ์ •์˜ : ์‰ผํ‘œ์™€ ํ•จ๊ป˜ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฐ˜๋“œ์‹œ ์ฝœ๋ก (:)๊ณผ ํ•จ๊ป˜ ์ž๋ฃŒํ˜•์„ ๋ช…์‹œํ•ด์•ผ ํ•จ
    4. ๋ฐ˜ํ™˜๊ฐ’์˜ ์ž๋ฃŒํ˜• ๋ช…์‹œ
    5. ํ•จ์ˆ˜์˜ ๋ณธ๋ฌธ
    6. ๊ฐ’ ๋ฐ˜ํ™˜
    • ๋ฐ˜ํ™˜๊ฐ’์ด ์—†๋Š” ํ•จ์ˆ˜ : ๋ฐ˜ํ™˜๊ฐ’์˜ ์ž๋ฃŒํ˜•์„ Unit์œผ๋กœ ์ง€์ •, ์ƒ๋žต ๊ฐ€๋Šฅ
      • Unit : Kotlin์—์„œ ๋‹ค๋ฃจ๋Š” ํŠน์ˆ˜ํ•ญ ์ž๋ฃŒํ˜• ์ค‘ ํ•˜๋‚˜๋กœ ๋ฐ˜ํ™˜๊ฐ’์ด ์—†์„ ๋•Œ ์‚ฌ์šฉ
    fun printSum(a: Int, b: Int): Unit {
        println("sum of $a and $b is ${a+b}")
    }
  4. ๋ถ„๊ธฐ๋ฌธ

    • if, else if, else๋ฌธ
    fun main() {
        print("Enter the score: ")
        val score = readLine()!!.toDouble()
        var grade: Char = 'F'
    
        if (score >= 90.0) {
            grade = 'A'
        } else if (score >= 80.0 && score <= 89.9) {
            grade = 'B'
        } else
            grade = 'C'
        }
    
        println("Score: $score, Grade: $grade")
    }
    • when๋ฌธ
    fun main() {
        print("Enter the score: ")
        val score = readLine()!!.toDouble()
        var grade: Char = 'F'
    
        when(score) {
            in 90.0..100.0 -> grade = 'A'
            in 80.0..89.9 -> grade = 'B'
            !in 80.0..100.0 -> grade = 'C'
        }
    
        println("Score: $score, Grade: $grade")
    }
  5. ๋ฐ˜๋ณต๋ฌธ

    • for๋ฌธ : ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ์กฐ๊ฑด์‹์— ๋”ฐ๋ผ ๋ณ€์ˆ˜ ๊ฐ’์„ ๋ฐ˜๋ณตํ•ด์„œ ์ฆ๊ฐํ•˜๋Š” ๊ตฌ๋ฌธ
    fun main() {
        var sum = 0
    
        for (x in 1..10) sum += x
        println("sum: $sum")
    }
    • ํ•˜ํ–‰ ๋ฐ˜๋ณต๋ฒ• (for๋ฌธ)
    for (i in 5 dowonTo 1) print(i)
    • while๋ฌธ : ์กฐ๊ฑด์‹์ด true๋ฅผ ๋งŒ์กฑํ•˜๋Š” ๊ฒฝ์šฐ whil๋ฌธ์˜ ๋ธ”๋ก์„ ๋ฌดํ•œํžˆ ๋ฐ˜๋ณต
    fun main() {
        print("Enter the number: ")
        var number = readLine()!!.toInt()
        var factorial: Long = 1
    
        while (number > 0) {
            factorial *= number
            --number
        }
    
        println("Factorial: $factorial")
    }
    • do-while๋ฌธ : ์ผ๋‹จ do ๋ธ”๋ก์— ์ž‘์„ฑํ•œ ๋ณธ๋ฌธ์„ ํ•œ ๋ฒˆ์€ ์‹คํ–‰ํ•œ ๋‹ค์Œ ๋งˆ์ง€๋ง‰์— ์กฐ๊ฑด์‹์„ ๊ฒ€์‚ฌํ•ด์„œ true๊ฐ€ ๋‚˜์˜ค๋ฉด ์ž‘์—…์„ ๋ฐ˜๋ณต
    fun main() {
        do {
            print("Enter an integer: ")
            val input = readLine()!!.toInt()
    
            for (i in 0..(input-1)) {
                for(j in 0..(input-1)) print((i+j) % input + 1)
                println()
            }
        } while (input != 0)
    }
CheonYoonHan commented 4 years ago

ํ  ์žก์„๋•Œ๊ฐ€ ์—†๋„ค์š”. ๐Ÿ’ฏ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.