이제는 기본 문법인 조건문에 대해 배워보자.
if 문 - 자바와 아주 유사하기에, 예시 코드만 작성
- 이와 같이 자바와 다른 점이 거의 없다. ;만 사용하지 않는다 정도의 차이만 존재한다.
fun main(){
var count : Int = 85
if(count >= 90) {
println("장학생')
}
else {
println("비장학생")
}
//when(count>=90){
//100 -> println('장학생')
//}
}
점수에 따라 학점을 나누는 프로그램을 작성해라.
1) xml 작성 : 이번에는 editText를 이용해서 프로그램을 만들어보고자 한다.
- 간단하게 editText를 통해 사용자로부터 학점을 입력받고자 했다
- 버튼을 누르면, 토스트를 통해 a~f 를 알 수 있도록 했다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:text="학점을 입력해주세요"
android:textSize="34sp" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:id="@+id/grade"
android:textColor="@color/purple_200"
android:layout_marginTop="20dp"
android:textSize="34sp"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:id = "@+id/gradeButton"
android:text = "입력"
/>
</LinearLayout>
2) kotlin(중요!)
- 나에게 필요한건 사용자에게 입력받은 학점, 버튼이기에 이 두가지만 id를 xml으로부터 받고 응용해서 만들었다.
- 조건문 if, when을 둘 다 사용하려고 했으며, 조금의 아이디어지만, answer를 when으로 부터 받을 수 있도록 하여, 코드를 간결하게 작성하였다.
- 학점은 토스트를 통해 볼 수 있도록 하였다. 참고로 안드로이드에서 토스트는 매우 기본 개념이기에 이 코드에서 마지막으로 언급하겠다. $를 이용해서 변수의 값을 받아올 수 있도록 하였다(파이썬과 유사)
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import android.widget.Toast
import androidx.activity.ComponentActivity
class GradeActivity : ComponentActivity() {
lateinit var number: EditText //입력할 학점.(사용자로부터 입력을 받음)
lateinit var button : Button //사용자가 성적 입력 후, 누르는 버튼
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.grade) // 레이아웃 연결
// 레이아웃이 로드된 후 findViewById 호출
val number = findViewById<TextView>(R.id.grade)
val button = findViewById<Button>(R.id.gradeButton)
button.setOnClickListener {
val inputGrade = number.text.toString()//사용자가 입력한 성적을 받는 코드
if (inputGrade.isNotEmpty()) {
val grade = inputGrade.toFloat()
val answer : String
answer = when {
grade >= 4.0 -> "A"
grade >= 3.5 -> "B"
grade >= 3.0 -> "C"
grade >= 2.5 -> "D"
else -> "F"
}
Toast.makeText(this, "당신의 학점은 $answer 입니다.", Toast.LENGTH_SHORT).show()
}
else {
// 성적을 입력하지 않은 경우, 오류 메시지
Toast.makeText(this, "성적을 입력해주세요.", Toast.LENGTH_SHORT).show()
}
}
}
}
3) 실행화면 : 원하는 학점은 A니까... 이에 맞춰서 입력해보았다:)
'안드로이드 프로그래밍📱 > Kotlin📲 개념' 카테고리의 다른 글
[Kotlin] 클래스와 인스턴스 (0) | 2025.02.13 |
---|---|
[Kotlin] 함수 (0) | 2025.02.13 |
[Kotlin] 배열 (0) | 2025.02.11 |
[Kotlin] 변수& 데이터 개념 정리 (0) | 2025.02.11 |