์ฝํ๋ฆฐ์ ๋ฐฐ์ฐ๊ธฐ ์์ํ๊ณ ์ด๋์ ๋ ๊ธฐ๋ณธ๋ฌธ๋ฒ์์ JAVA์์ ์ฐจ์ด์ ์ ์๊ฒ ๋์๋ค. ๋ฐ๋ผ์ ์ด๋์ ๋ ์ ๋ฆฌ๊ฐ ํ์ํ๊ธฐ์ ํฌ์คํ ์ ๋ฐ๋ก ์ฌ๋ฆฌ๊ธฐ๋ก ๊ฒฐ์ฌํ๋ค.
์ฐ์ ์ฝํ๋ฆฐ์์์ ๋ณ์๋ฅผ ์ ์ํ๋ ๋ฐฉ๋ฒ์ด๋ค
val
val์ JAVA์์์ final ๊ณผ ๋น์ทํ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์ฆ ์์, ์ด๊ธฐํ ์ดํ ๋ณํํ์ง ์๋ ๊ฐ์ด๋ผ๋ ๊ฐ๋ ์ด๋ค.
//java
int age = 1;
//kotlin
val age : Int = 1
var
//java
int age = 1;
age = 2;
//kotlin
var age : Int = 1
age = 2 //์ด๊ธฐํ๋ฅผ ํด๋ ๋ณ์์ด๊ธฐ ๋๋ฌธ์ ๋ณ๊ฒฝ ๊ฐ๋ฅ
์๋ฃํ
์ฝํ๋ฆฐ์์์ ๋๋ถ๋ถ ๊ฐํ ๋ณ์๋ ์ฒซ๊ธ์๊ฐ ๋๋ฌธ์์ด๋ค
Double
Float
Long
Int
Short
Byte
String
Char
์๋ ์์๋ฅผ๋ณด์
//java
int age;
//kotlin
var age : Int
๊ธฐ๋ณธ์ ์ผ๋ก var ๋ณ์๋ช : ์๋ฃํ ๋ฐฉ์์ผ๋ก ์๋ฃํ์ ๋ถ์ฌ์ค๋ค
์๋ฃํ์ด ์๋ต๋์ด๋ ์ ๊ณต๋๋ ๊ฐ์ ๋ฐ๋ผ ์๋์ผ๋ก ์๋ฃํ์ด ์ ํด์ง๋ค
//kotlin
var num = 1 //์๋ฃํ : Int
var num = 0.1 //์๋ฃํ : Double
var num = 0.1 as Float // ์๋ฃํ ๋ณํํ ๋ฃ์ด์คฌ๋ค
ํจ์
ํค์๋๋ function ์ fun ์ ์ฌ์ฉํ๋ค.
์ฝํ๋ฆฐ์์ ์ฌ์ฉํ๋ ํจ์๋ ์๋ฃํ์ ์ด๋ฆ ๊ธฐ์ค ์ค๋ฅธ์ชฝ์ ์ ์ด๋๊ณ , ๋ฐํํ๋ ์ค๋ฅธ์ชฝ์ ์ ์ด๋๋ค
//java
int calculate ( int a , int b ){
return a+b;
}
//kotlin
fun calculate ( a : Int, b : Int) : Int {
return a+b
]
๋ง์ฝ ๋ฐํํ์ด ์๋ ํจ์๋ผ๋ฉด ์๋ ์ฒ๋ผ ์จ์ฃผ๋ฉด ๋๋ค.
fun chage () : Unit {
}
Unit์ ์๋ตํด๋ ๋ฌด๊ดํ๋ค
fun chage () {
}
Any
Java์์๋ object ์๋ฃํ์ ์ฐ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. object๋ ์์ธก ๋ถ๊ฐ๋ฅํ ์๋ฃํ์ ์์๋ก ๋ด์๋๊ฑฐ๋ ๋์ค์ ๊ฐ๊ณตํ๊ธฐ ์ํด ์์ฃผ ์ฌ์ฉ๋๋ค. ์ฝํ๋ฆฐ์์๋ object๊ฐ ์กด์ฌํ๊ธด ํ์ง๋ง Any ํ์ object์ ์ํผ ํด๋์ค๋ผ๊ณ ํ๋ค.
๋ฐ๋ผ์ Any๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค.
๋ฐ๋ณต๋ฌธ
๋ฐ๋ณต๋ฌธ๋ํ Java์ ํค์๋๋ ๋น์ทํ๋ ์กฐ๊ฑด๋ถ๋ถ์ด ์กฐ๊ธ์ฉ ๋ค๋ฅด๋ค
while
//java
while( i < 10 ) {
i++
}
//kotlin
while( i < 10 ) {
i++
}
for
//JAVA ๋ฒ์
for(int i = 1; i <= 5 ; i++){
}
//Kotlin๋ฒ์
for (i in 1..10){
}
//kotlin for๋ฌธ ์ฐธ๊ณ
for(i in 1..10) //1๋ถํฐ 10๊น์ง ํฌํจํ๊ณ 1์ฉ ์ฆ๊ฐํ์ฌ ๋ฐ๋ณต
for(i in 1 until 10) //1๋ถํฐ 10์ ์ ์ธํ๊ณ 1์ฉ ์ฆ๊ฐํ์ฌ ๋ฐ๋ณต (9 ์ ๊น์ง)
for(i in 1..10 step 2) //1๋ถํฐ 10๊น์ง 2์ฉ ์ฆ๊ฐํ์ฌ ๋ฐ๋ณต
for(i in 10 downTo 1) //10๋ถํฐ 1๊น์ง 1์ฉ ๊ฐ์ํ์ฌ ๋ฐ๋ณต
for(i in 10 downTo 1 step 2) //10๋ถํฐ 1๊น์ง 2์ฉ
foreach
//java
for(int i : array){
}
//kotlin
for(i : int in array){
}
foreach ๋ฌธ์ ๊ฒฝ์ฐ ํท๊ฐ๋ฆฌ๊ธฐ ์ฝ์ ์กฐ์ฌํด์ ์ฌ์ฉํ๋๋ก ํ์
์กฐ๊ฑด๋ฌธ
if
//java
if( i < 5 ){
}els if( i < 10){
]else{
}
//kotlin
if( i < 5 ){
}els if( i < 10){
]else{
}
์ผ๋ฐ if๋ฌธ์๋ ์ฐจ์ด์ ์ด ๋ณ๋ก ์๋ค
ํ์ง๋ง kotlin์์๋ ๋ฐํif๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ ์ด๋ถ๋ถ์์ ์ฐจ์ด์ ์ด ๊ฐ๋ฆฐ๋ค.
๋ฐํํ if
//java
String result;
if(i){
result = "์ฐธ"
}else{
result = "๊ฑฐ์ง"
}
//kotlin
var result : String = if(i){
"์ฐธ"
}else{
"๊ฑฐ์ง"
}
when
//java
switch(i){
case 1:
//i๊ฐ์ด 1์ผ ๊ฒฝ์ฐ ์คํํ ๋ก์ง
break;
case 2:
//i๊ฐ์ด 2์ผ ๊ฒฝ์ฐ ์คํํ ๋ก์ง
break;
default:
//์์ case์ ํด๋นํ์ง ์์ ๋
}
//kotlin
when(i){
1 -> //1์ผ ๊ฒฝ์ฐ ์คํํ ๋ก์ง
2 -> //2์ผ ๊ฒฝ์ฐ ์คํํ ๋ก์ง
else -> //์์ ๊ฒฝ์ฐ์ ํด๋นํ์ง ์์ ๋ ์คํํ ๋ก์ง
}
//kotlin ๋ฐํํ when
var a : String = when(i){
}