본문 바로가기

Android (Kotlin)30

[Hotel Reservation] 호텔 예약 프로그램 lv.3.1 수정한 부분: SubMenu1CheckCheckOutDate 부분을 수정해 주었다. 전에 잘못했었나보다... test 결과가 계속 이상하게 나와서 수정하고 테스트하고 를 반복했다. 생각해볼 부분: 계산기 피드백을 받은 후 이 코드도 어디엔가 더 간단하게 만들 수 있는 방법이 있지 않을까 고민하게 된다. 특히 코드의 업캐스팅이랑 다운 캐스팅을 오늘 새로 배웠는데 아직 정확한 사용방법이나 응용법을 터득하진 못했지만 잘 사용하면 코드가 훨씬 간결해질 수 있겠다는 생각이 든다. package com.example.hotelreservationprogramme fun main() { // 첫번째 실행 (메뉴 선택) val menuObject = MainMenu() menuObject.mainMenu() print.. 2023. 12. 4.
[Calculator] 계산기 만들기 lv4.1 수정한 부분 추상클래스의 주생성자를 이용해야한다는 피드백을 받았다. 추상클래스에 주생성자를 추가하긴 했지만 그 안에 추상 함수에 매개변수를 또 작성해서 장황하게 코드를 작성했었다. 또 전 코드에서는 추상클래스를 통해서 메인 함수에 추상함수를 불러오는게 아닌 추상함수를 바로 호출했었다. 추상클래스를 사용하면서 단일책임원칙을 지키지 않았던 것 같다. 지난번에 마무리하면서 메인 함수 내부에 들어가는 코드가 조금 아쉽다는 생각이 계속 들었었는데 이번에 제대로 수정한 것 같다. 장황하게 적혀져있던 메개 변수들도 전부 지울 수 있어서 코드가 매우 깔끔해졌다. package com.example.mycalculator //- Lv4 : AddOperation(더하기), SubtractOperation(빼기), Mul.. 2023. 12. 4.
[Kotlin] 유용한 기능 1. 문자열로 저장되어있는 숫자를 정수형으로 바꾸는 방법 var intNum = 10 var doubleNum = "10.43" var num1 = Integer.paresInt(intNum) var num2 = doubleNum.toDouble() println("num1 : $num1") println("num2 : $num2") // 출력값: // num1 : 10 // num2 : 10.43 2. 객체 자료형간의 변환 2.1 업 캐스팅 (자식 클래스를 부모클래스의 자료형으로 객체 생성) - 추가 공부 필요 fun main() { println("몇 마리를 생성하시겠습니까?") var count = readLine()!!.toInt() var birds = mutableListOf() for (id.. 2023. 12. 4.
[Kotlin] List - forEach 우선적으로 사용할 데이터가 아래 코드와 같다고 가정하자. class Country(val name : String, val cities : List) class City(val name : String, val streets : List) class World { val streetsOfAmsterdam = listOf("Herengracht", "Prinsengracht") val streetsOfBerlin = listOf("Unter den Linden","Tiergarten") val streetsOfMaastricht = listOf("Grote Gracht", "Vrijthof") val countries = listOf( Country("Netherlands", listOf(City("Maa.. 2023. 12. 4.