코딩은 사실 조건문과 반복문만 알면 웬만한 알고리즘은 구현 가능하다고 할 수 있을 정도로 조건문과 반복문이 정말 중요하다. 물론 협업을 위해 코드의 가독성을 최적화를 하거나, C언어의 포인터나 구조체 등을 통해 트리나 큐(que), 연결 리스트(linked list)와 같은 자료구조를 구현하는 등 더 어려운 개념들도 있지만 조건문과 반복문만 있어도 어느정도의 구현은 가능하다. 오늘은 그 중에 조건문을 알아보도록 하자.
1. if 문 사용하기
코틀린에서의 if문 사용 방법은 다음과 같다.
if (condition_1) {
...
}
else if (condition_2){
...
}
else {
...
}
문법은 C언어와 동일하다.
그럼 바로 이를 이용해 버튼을 누른 횟수가 홀수인지 짝수인지 표시해주는 앱을 만들어 보자.
초기 코드는 하단 포스트에서 확인 가능하다.
[Android] 개발 시작하기 - Kotlin 함수
[Android] 개발 시작하기 - Kotlin 버튼 기능 추가[Android] 개발 시작하기 - Kotlin 변수 생성변수 선언하기"var" vs "val"변수의 선언 방법은 아래와 같다."var"의 경우 변수의 값(value)이 변경되는 경우 사용
lg2ivl3.tistory.com

먼저 화면에 홀수인지 짝수인지 표시해줄 수 있는 TextView를 하나 생성해준다.(TextView의 생성 방법은 아래 포스트의 버튼 생성과 동일하다.)
[Android] 개발 시작하기 - Kotlin 버튼 생성
1. 초기 화면"Empty Views Activity"를 선택하여 프로젝트를 생성하였을 때의 초기 화면이다. 여기서 빨간색 박스 안에 "Palette"를 클릭한다.2. "Button"을 드래그하여 추가빨간색 박스 안의 "Button"을 드래
lg2ivl3.tistory.com
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="default"
app:layout_constraintBottom_toTopOf="@+id/test_button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView" />
TextView의 id는 변경하지 않았고, 초기 값만 "default"로 설정해 버튼을 한 번도 클릭하지 않은 경우의 값을 표시해주었다.
이후 "MainActivity.kt"파일로 돌아가 다음과 같은 코드를 추가해주었다.
val text2 = findViewById<TextView>(R.id.textView2)
if(num_count % 2 == 0){
text2.text = "even"
}
else{
text2.text = "odd"
}
이때 "num_count % 2 == 0"는 int 타입의 num_count변수를 2로 나누었을 때의 나머지 값이 0과 동일하다면 True를 반환한다는 의미이며, 따라서 해당 조건문은 2로 나누어 떨어지면 text2.text 값을 "even", 그렇지 않다면(else) "odd"로 변경한다는 의미이다.
2. 동작 확인
앱을 다시 실행하면 아래와 같은 화면을 확인 가능하다.

버튼은 정상적으로 추가되었고, 이제 "TEST BUTTON"을 클릭해보자.

버튼을 클릭할때마다 TextView의 값이 정상적으로 변경되는 것을 확인할 수 있다.
최종적으로 수정된 코드는 아래와 같다.
package com.application.firstproject
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import android.widget.Button
import android.widget.TextView
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
val btnTest : Button = findViewById(R.id.test_button)
val text = findViewById<TextView>(R.id.textView)
val text2 = findViewById<TextView>(R.id.textView2)
var num_count:Int = 0
text.text = num_count.toString()
btnTest.setOnClickListener {
num_count = count(num_count)
text.text = num_count.toString()
if(num_count % 2 == 0){
text2.text = "even"
}
else{
text2.text = "odd"
}
}
}
fun count(num: Int): Int {
return num + 1
}
}'[Develop] > [Android]' 카테고리의 다른 글
| [Android] 개발 시작하기 - RoomDB 사용하기 (2) (0) | 2025.08.26 |
|---|---|
| [Android] 개발 시작하기 - Kotlin 반복문(for) (0) | 2025.08.22 |
| [Android] 개발 시작하기 - RoomDB 사용하기 (1) (0) | 2025.08.17 |
| [Android] 개발 시작하기 - Kotlin 배열(Array) (0) | 2025.08.16 |
| [Android] 개발 시작하기 - Kotlin 함수 (8) | 2025.08.12 |