Kotlin 기본 문법 정리

2024. 3. 27. 14:56·공부

요즘 코프링에 관심이 좀 생겼는데 마침 모바일프로그래밍 수업도 듣게되었담 ^!^

그래서 이참에 코틀린 문법을 쬠 정리 해보려구 한다 :)

계속 추가해서 적을 예정임

 

1. 변수 선언

  • Var
    • 읽기, 쓰기 가능
  • Val
    • 읽기만 가능 (== 변경이 불가능!하다)

Val(Var) 변수명: 타입

아래는 코드예시이다

Var i: Int = 10 
Val j: Int = 10

i = 20
j = 20 //(x)에러

 

*Tip: 혹여나 나중에 변수를 바꾸면 안될 경우에는 Val 로 미리 선언하여 오류를 통해 방지할 수 이따!

 

2. ? null 

기본적으로 코틀린은 Null을 허용하지않는다! 

(자바를 주언어로 하는 나에겐... 신세계....!!! ㄱ- 맨날 NPE땜에 스트레쓰받는... ㅋㅅㅋ)

만약 Null을 허용하고싶다면 타입 옆에 ?를 붙이자!

Var 변수명: 타입?

Var i: Int? = 10

 i는 Null 허용해줌!

 

3.타입추론

코틀린은 기본적으로 들어오는 값을 보고 타입을 알아서 지정해준다!!! 개꿀

 

+ 데이터타입 알고싶다면! 변수::class로 출력가능하다

val s = “ABC”
val i = 10

println("s = " + s::class) 
//s = class java.lang.String (Kotlin reflection is not available)
println("i = " + i::class) 
//i = int (Kotlin reflection is not available)

 

 

 

 

4.if else 조건문

if(조건문) ...else 는 똑같은데,

+)println시 해당 값 넣으려면 $변수로 가능하다!

 

val priceA: Int = 100
val priceB: Int = 200
if(priceA >= priceB) println("priceA = $priceA")
else println("priceB = $priceB")

=> priceB가 더 크기때문에 출력: priceB = 200 

 

4-1. arrayOf

이왕 배운 김에 배열도 잠깐 건드려본다

arrayOf의 대박인점... 은 타입이 달라도 전부 넣기 가능하다...개충격...!!!!!!!

=> val arr = arrayOf(1, "string", true)로 가능하단 얘기 킁..

 

그래도 일단 Int로 해보쟈

val price: Int = 250
if(price in arrayOf(100,200,500)) println("contain")
else println("not Contained")

 

아래처럼 미리 선언하고 조건문안에 넣어두 된당

val arr = arrayOf(100,200,500)
if(price in arr) println("contain")

=> not Contained가 출력되겠지용?

5.when 조건문

java의 switch문과 유사하당

코틀린에서는 -> 화살표를 많이 쓰기두!

 

val price: Int = 200
when(price){
100 -> println("1.price = $price")
200 -> println("2.price = $price")
500 -> println("3.price = $price")
else -> println("4. Not")
} //2.price = 200

 

 

아래에서 특이한 점은 " .. " 인데, 100<=price<=199 라고 생각하면 된다!

val price: Int = 250
when(price){
in 100..199 -> println("1. 100 ~ 199")
in 200..299 -> println("2. 200 ~ 299")
in 300..399 -> println("3. 300 ~ 399")
else -> println("4. Not")
} //2. 200 ~ 299​

 

 

6.functuon

형태는 이러하다 

 

fun 함수명(매개변수: 타입): 반환타입{

//본문

return 반환값
}

 

반환타입 생략가능! return 생략 후 = 반환값 으로 가능!

fun main(args: Array<String>) {
    val price1 = 100
    val price2 = 200
    val price3 = sumPrice(price1, price2)
    println("price3 = $price3")
}

fun sumPrice(price1: Int, price2: Int) = price1 + price2

 

 

'공부' 카테고리의 다른 글

[알고리즘] BFS/DFS  (0) 2024.05.07
[알고리즘] 정렬  (0) 2024.05.07
[JAVA] ArrayList <-> Array  (0) 2024.02.20
[JAVA] 문자열 함수 정리  (0) 2024.02.19
[JAVA] Stack(스택)과 Queue(큐)  (2) 2024.02.04
'공부' 카테고리의 다른 글
  • [알고리즘] BFS/DFS
  • [알고리즘] 정렬
  • [JAVA] ArrayList <-> Array
  • [JAVA] 문자열 함수 정리
jiixon
jiixon
  • jiixon
    Dev:elop
    jiixon
  • 전체
    오늘
    어제
    • 분류 전체보기 (26)
      • JAVA (0)
      • SPRING (3)
      • SERVER (2)
      • 공부 (20)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • POST
    • SETTING
  • 공지사항

  • 인기 글

  • 태그

    알고리즘
    tdd
    서버
    spring
    spring jpa
    java
    Kotlin
    junit
    자바
    프로그래머스
    springboot
    테스트
    Elastic Beanstalk
    배포
    AWS
    Bdd
    AssertJ
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
jiixon
Kotlin 기본 문법 정리
상단으로

티스토리툴바