[Kotlin] 조건문:if, when

2025. 2. 11. 18:33·안드로이드 프로그래밍📱/Kotlin📲 개념

이제는 기본 문법인 조건문에 대해 배워보자.

 

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
'안드로이드 프로그래밍📱/Kotlin📲 개념' 카테고리의 다른 글
  • [Kotlin] 클래스와 인스턴스
  • [Kotlin] 함수
  • [Kotlin] 배열
  • [Kotlin] 변수& 데이터 개념 정리
🥔감자🥔
🥔감자🥔
감자 개발자의 성장일기 입니다! 아직 많이 부족하기에 많이 조언해주세요:) 깃허브 주소 : https://github.com/KateteDeveloper 이모티콘 저작권 : <a href="https://www.flaticon.com/kr/free-icons/" title=" 아이콘"> 아이콘 제작자: Good Ware - Flaticon</a>
  • 🥔감자🥔
    감자개발자의 성장일기
    🥔감자🥔
    GitHub | Notion
    아직 많이 부족하기에 많이 조언&댓글 부탁드립니다. 🥔
    아이콘 제작자: Good Ware
  • 전체
    오늘
    어제
  • 카테고리

      • 분류 전체보기
        • 웹 프로그래밍🖥️
          • Projects💻
          • HTML📃 정리
          • [React] 설치
        • 안드로이드 프로그래밍📱
          • [Android_Studio] 설치
          • Kotlin📲 개념
          • Projects📲
          • XML 📃 코드 정리
        • [Android_Project]구루2 정리📁
        • [Activity]
          • UMC
        • BackEnd
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      constraintlayout #androidstudio
      visualstudiocode #react #깃허브 올리기 #github
      guru #connector #mysql과 androidstudio 연동
      테이블레이아웃 #tablelayout
      mysql 팀원 추가
      kotlin #함수
      android studio와 mysql연동
      javascript #간단한 웹프로그래밍 #회원가입
      릴렉티브레이아웃 #
      html #table
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    🥔감자🥔
    [Kotlin] 조건문:if, when
    상단으로

    티스토리툴바