Welcome to Westonci.ca, the place where your questions find answers from a community of knowledgeable experts. Join our Q&A platform and get accurate answers to all your questions from professionals across multiple disciplines. Join our platform to connect with experts ready to provide precise answers to your questions in different areas.

4.13 LAB: Playlist (output linked list)
Given main(), complete the SongNode class to include the printSongInfo() method. Then write the Playlist class' printPlaylist() method to print all songs in the playlist. DO NOT print the dummy head node.

Ex: If the input is:

Stomp!
380
The Brothers Johnson
The Dude
337
Quincy Jones
You Don't Own Me
151
Lesley Gore
-1
the output is:

LIST OF SONGS
-------------
Title: Stomp!
Length: 380
Artist: The Brothers Johnson

Title: The Dude
Length: 337
Artist: Quincy Jones

Title: You Don't Own Me
Length: 151
Artist: Lesley Gore

import java.util.Scanner;

public class Playlist {

// TODO: Write method to ouptut list of songs

public static void main (String[] args) {
Scanner scnr = new Scanner(System.in);

SongNode headNode;
SongNode currNode;
SongNode lastNode;

String songTitle;
int songLength;
String songArtist;

// Front of nodes list
headNode = new SongNode();
lastNode = headNode;

// Read user input until -1 entered
songTitle = scnr.nextLine();
while (!songTitle.equals("-1")) {
songLength = scnr.nextInt();
scnr.nextLine();
songArtist = scnr.nextLine();

currNode = new SongNode(songTitle, songLength, songArtist);
lastNode.insertAfter(currNode);
lastNode = currNode;

songTitle = scnr.nextLine();
}

// Print linked list
System.out.println("LIST OF SONGS");
System.out.println("-------------");
printPlaylist(headNode);
}
}


Sagot :

Using the knowledge in computational language in JAVA it is possible to write a code that will organize the songs of a playlist through the titles and singers.

Writing the code in JAVA we have:

import java.util.Scanner;

public class Playlist {

public static void printPlaylist(SongNode songs){

SongNode song = songs.getNext();

while (song!=null) {

song.printSongInfo();

System.out.println();

song = song.getNext();

}

}

public static void main (String[] args) {

Scanner scnr = new Scanner(System.in);

SongNode headNode;

SongNode currNode;

SongNode lastNode;

String songTitle;

int songLength;

String songArtist;

headNode = new SongNode();

lastNode = headNode;

songTitle = scnr.nextLine();

while (!songTitle.equals("-1")) {

songLength = scnr.nextInt();

scnr.nextLine();

songArtist = scnr.nextLine();

currNode = new SongNode(songTitle, songLength, songArtist);

lastNode.insertAfter(currNode);

lastNode = currNode;

songTitle = scnr.nextLine();

}

System.out.println("LIST OF SONGS");

System.out.println("-------------");

printPlaylist(headNode);

}

}

class SongNode {

private String songTitle;

private int songLength;

private String songArtist;

private SongNode nextNodeRef;

public SongNode() {

songTitle = "";

songLength = 0;

songArtist = "";

nextNodeRef = null;

}

public SongNode(String songTitleInit, int songLengthInit, String songArtistInit) {

this.songTitle = songTitleInit;

this.songLength = songLengthInit;

this.songArtist = songArtistInit;

this.nextNodeRef = null;

}

public SongNode(String songTitleInit, int songLengthInit, String songArtistInit, SongNode nextLoc) {

this.songTitle = songTitleInit;

this.songLength = songLengthInit;

this.songArtist = songArtistInit;

this.nextNodeRef = nextLoc;

}

public void insertAfter(SongNode nodeLoc) {

SongNode tmpNext;

tmpNext = this.nextNodeRef;

this.nextNodeRef = nodeLoc;

nodeLoc.nextNodeRef = tmpNext;

}

public SongNode getNext() {

return this.nextNodeRef;

}

public void printSongInfo(){

System.out.println("Title: "+this.songTitle);

System.out.println("Length: "+this.songLength);

System.out.println("Artist: "+this.songArtist);

}

}

See more about JAVA at brainly.com/question/12975450

#SPJ1

View image lhmarianateixeira
View image lhmarianateixeira