Kyaria icon

Main.kt

Kyaria | PRO | 06/11/19 10:01:25 AM UTC | 0 ⭐ | 10662 👁️ | Never ⏰ | []
Kotlin |

5.5 KB

|

None

|

0 👍

/

0 👎

import org.junit.Test
 
fun main() {
    val verwaltung = Musikverwaltung()
 
    val song1 = Song("Led Zeppelin", "Led Zeppelin", 180, 90)
    val song2 = Song("Led Zeppelin II", "Led Zeppelin", 147, 80)
    val song3 = Song("Led Zeppelin III", "Led Zeppelin", 260, 72)
    val song4 = Song("[Led Zeppelin IV]", "Led Zeppelin", 451, 85)
    val song5 = Song("Houses of the Holy", "Led Zeppelin", 332, 94)
    val song6 = Song("Physical Graffiti", "Led Zeppelin", 174, 100)
    val song7 = Song("Presence", "Led Zeppelin", 80, 67)
    val song8 = Song("In Through the Out Door", "Led Zeppelin", 270, 93)
 
    val songTXT = SongMitText("Generic Song A", "Artist One", 80, 67, "Strings, I guess.")
    val songAB = SongMitAutobewertung("Generic Song B", "Artist Two", 270, 80)
 
    verwaltung.hinzufuegen(song1)
    verwaltung.hinzufuegen(song2)
    verwaltung.hinzufuegen(song3)
    verwaltung.hinzufuegen(song4)
    verwaltung.hinzufuegen(song5)
    verwaltung.hinzufuegen(song6)
    verwaltung.hinzufuegen(song7)
    verwaltung.hinzufuegen(song8)
    verwaltung.hinzufuegen(songTXT)
    verwaltung.hinzufuegen(songAB)
 
    if (songTXT.search("Strings, I guess"))
        println("\nsongTXT funktioniert!\n")
 
    println("\nsongAB:    Titel: ${songAB.titel}, Bewertung:  ${songAB.bewertung}\n")
    songAB.abspielen()
    println("\nsongAB:    Titel: ${songAB.titel}, Bewertung:  ${songAB.bewertung}\n")
 
    val songME = SongMitEigenschaften("Generic Song  C", "Artist Three", 80, 67, 2017, 12345)
    println("\nSongME:    Titel: ${songME.titel}, Durchschnittlicher Verkauf pro Jahr seid Release: ${"%.2f".format(songME.durchschnitt())}\n")
 
    val newPlaylist = Playlist(mutableListOf<Song>(song1, song2, song3))
    val zufallsPlaylist: Playlist = verwaltung.zufallsPlaylist()
    val dynPlaylist = DynamicPlaylist(mutableListOf<Song>(song1, song2, song3))
 
    val bew = 80
 
    newPlaylist.alleAbspielen()
    println("\nSpieldauer von newPlaylist: ${newPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",newPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${newPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    println("\n-----SEPERATOR-----\n")
 
    zufallsPlaylist.alleAbspielen()
    println("\nSpieldauer von zufallPlaylist: ${zufallsPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",zufallsPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${zufallsPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    println("\n-----SEPERATOR-----\n")
 
    dynPlaylist.alleAbspielen()
    println("\nSpieldauer von dynPlaylist: ${dynPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",dynPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${dynPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    //dynPlaylist Test
 
    dynPlaylist.add(song6)
 
    println("\n-----SEPERATOR-----\n")
 
    dynPlaylist.alleAbspielen()
    println("\nSpieldauer von dynPlaylist: ${dynPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",dynPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${dynPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    println("\n-----SEPERATOR-----\n")
 
    //val testSong = dynPlaylist.take()
    dynPlaylist.take2(song6)
 
    //println(testSong?.titel)
 
    dynPlaylist.alleAbspielen()
    println("\nSpieldauer von dynPlaylist: ${dynPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",dynPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${dynPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    println("\n-----SEPERATOR-----\n")
 
    dynPlaylist.reset()
 
    dynPlaylist.alleAbspielen()
    println("\nSpieldauer von dynPlaylist: ${dynPlaylist.gesamteSpieldauer()} Sekunden, ${String.format("%.2f",dynPlaylist.gesamteSpieldauer() / 60.0)} Minuten")
    println("\nAnzahl der Songs mit einer  Bewertung von $bew oder besser: ${dynPlaylist.SpieldauerMitXOderBesser(bew)}")
 
    val besterSong: Song = verwaltung.besterSong()
 
    println("\nDer beste Song in der Datenbank ist: ${besterSong.titel} von ${besterSong.interpret}, Spieldauer: ${besterSong.spieldauer / 60.0}, Bewertung: ${besterSong.bewertung}")
 
    do{
        println("Bitte geben Sie einen Suchbegriff ein!")
        val eingabe = readLine().toString()
 
        if(eingabe != "stopp") {
            val seekSong = verwaltung.suchen(eingabe)
            seekSong?.abspielen() ?: println("\nIhre Suche ergab keine Treffer!\n")
        }
    }
    while(eingabe != "stopp")
 
    val  player = Wiedergabe(newPlaylist, 0)
 
    /*player.startStopErneut(0)
    player.nMalNeachsterSong(3)
    player.startStopErneut(1)
    player.startStopErneut(1)
    player.neachsterSong()
    player.wiedergabemodusSetzen(2)
    player.neachsterSong()*/
 
    // Test Sorting
 
    val dynPlaylistTwo = DynamicPlaylist(mutableListOf<Song>(song1, song2, song3))
 
    val compareAlphanumeric = object : Comparator<Song> {
        override fun compare(s1: Song, s2: Song): Int = s1.titel.compareTo(s2.titel)
    }
 
    val compareInts = object : Comparator<Song> {
        override fun compare(a: Song, b: Song): Int = a.bewertung - b.bewertung
    }
 
    dynPlaylistTwo.auflisten()
    dynPlaylistTwo.sort(compareInts)
    dynPlaylistTwo.auflisten()
}

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎