Quiz modeli
- Kotlin kursu
- Orta seviye
- Ders 42/116
- 6 dk
Question veri sınıfını ve listeyi tasarlarsın.
Quiz modeli
Bu beş derslik projede bir quiz uygulaması kuracaksın. Her ders bir parça ekler; son derste tüm parçalar bir araya gelir.
Önceki gruplarda öğrendiğin data class, MutableList ve menü döngülerini kullanacaksın. Birinci derste Question veri sınıfını ve boş bir soru listesi tanımlayacaksın. main içinde bir soru ekleyip ekrana yazdıracaksın. Proje boyunca bu veri modeli üzerine soru ekleme, oynatma, skor hesaplama ve menü birleştirme fonksiyonları gelecek.
Question ve MutableList
Bir data class, veriyi taşımak için uygundur. Question sınıfı soru metnini ve doğru cevabı taşır. MutableList ile sorular dinamik olarak eklenir.
Örnek: data class Question(val text: String, val answer: String). val questions: MutableList<Question> = mutableListOf() ile boş liste başlatılır. questions.add(Question("Başkent hangi ülke?", "Türkiye")) ile soru eklenir. questions[0].text ilk sorunun metnini verir. data class'ın toString'i Question(text=..., answer=...) biçimindedir.
Uygulama Question ve soru listesi
data class Question(val text: String, val answer: String) tanımla. val questions: MutableList<Question> = mutableListOf() ile boş liste bildir. main içinde questions.add(Question("Başkent hangi ülke?", "Türkiye")) ile soru ekle ve println(questions[0].text) ile ilk sorunun metnini yazdır.
Başlangıç kodu
// Question veri sınıfı tanımı
// questions adında boş mutable liste
// main'de bir soru ekle ve metnini yazdırÖrnek çözüm
data class Question(val text: String, val answer: String)
val questions: MutableList<Question> = mutableListOf()
fun main() {
questions.add(Question("Başkent hangi ülke?", "Türkiye"))
println(questions[0].text)
}Beklenen çıktı
Başkent hangi ülke?
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Quiz uygulamasının ilk dersinde hangisi tanımlanır?
- runQuiz fonksiyonu
- Question veri sınıfı ve soru listesi Doğru cevap
- score fonksiyonu
- runMenu fonksiyonu
Açıklama: İlk ders Question veri sınıfını ve listeyi tanımlar.
2 Question data class tanımını tamamla
data class ____(val text: String, val answer: String)
data class Question(val text: String, val answer: String)
Açıklama: data class Question soru modelini tanımlar.
3 Question parçalarını eşle
| Kavram | Anlamı |
|---|---|
data class Question |
Veri sınıfı |
val text: String |
Soru metni |
val answer: String |
Doğru cevap |
MutableList<Question> |
Soru listesi |