/** * List all tracks by the given artist. * * @param artist The artist's name. */ public void listByArtist(String artist) { for (Track track : tracks) { if (track.getArtist().contains(artist)) { System.out.println(track.getDetails()); } } }
/** * muestra los detalles de todos los tracks almacenados en un organizador usando un iterador. * ------------------- 0055 */ public void listAllTrackWithIterator() { Iterator<Track> pistas = tracks.iterator(); while (pistas.hasNext()) { Track mostrarPistas = pistas.next(); System.out.println(mostrarPistas.getDetails()); } }
/** Show a list of all the tracks in the collection. */ public void listAllTracks() { System.out.println("Track listing: "); for (Track track : tracks) { System.out.println(track.getDetails()); } System.out.println(); }
/** * añade un método a la clase MusicOrganizer llamado findInTitle que tome un único parámetro de * tipo String y muestre por pantalla la información de los tracks que contienen dicha cadena en * el título de la canción. ------------ 0052 */ public void findInTitle(String informaciónDeTracks) { for (Track datos : tracks) { // --------------------------------------------------------------------- 0052 if (datos.getTitle().contains(informaciónDeTracks)) { System.out.println(datos.getDetails()); } } }
/** * permite reproducir los primeros segundos de cada canción en orden aleatorio y cumple los * siguientes requisitos: Cada canción debe reproducirse una única vez y deben reproducirse todas * las canciones. Los contadores de reproducción deben actualizarse correctamente. Debe mostrar * por pantalla los detalles de la canción que está sonando en este momento. -------------------- * 0057 */ public void playSuffle() { // ------------------------------------------------------------------------------ 0057 Collections.shuffle( tracks); // ---solo con esta línea la colección queda desordenada aleatoriament. for (Track track : tracks) { track.incrementaContadorReproduciones(); System.out.println("Canción de. " + track.getDetails()); player.playSample(track.getFilename()); } }
/** OTRA FORMA DE HACER EL EJERCICO DEL MT. public void playSuffle() */ public void playShuffle2() { ArrayList<Track> copia = new ArrayList<>(); copia = (ArrayList) tracks.clone(); int numeroDeCancionesReproducidas = 0; while (numeroDeCancionesReproducidas < tracks.size()) { // elijo nº aleatorio entre las canciones que quedan por elegir. Random aleatorio = new Random(); int numeroAleatorio = aleatorio.nextInt(copia.size()); Track trackElegido = copia.get(numeroAleatorio); trackElegido.incrementaContadorReproduciones(); System.out.println("Canción de. " + trackElegido.getDetails()); player.playSample(trackElegido.getFilename()); copia.remove(numeroAleatorio); numeroDeCancionesReproducidas++; } }
/** * List a track from the collection. * * @param index The index of the track to be listed. */ public void listTrack(int index) { System.out.print("Track " + index + ": "); Track track = tracks.get(index); System.out.println(track.getDetails()); }