1 import java.util.Scanner; 2 public class MileageTrackerLinkedList { 3 public static void main (String[] args) { Scanner scnr new Scanner (System.in); 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Current MileageTrackerLinkedList.java. file: // References for MileageTrackerNode objects MileageTracker Node headNode; MileageTracker Node currNode; MileageTrackerNode lastNode; double miles; String date; int i; // Front of nodes List headNode = new MileageTrackerNode(); lastNode = headNode; // TODO: Scan the number of nodes // TODO: For the scanned number of nodes, scan in data and insert into the linked List // TODO: Call the printNodeData() method to print the entire linked List Load defaul
Given the MileageTrackerNode class, complete main() in the MileageTrackerLinkedList class to insert nodes into a linked list (using the insertAfter() method). The first user-input value is the number of nodes in the linked list. Use the printNodeData() method to print the entire linked list. DO NOT print the dummy head node.
Ex. If the input is:
3 2.2 7/2/18 3.2 7/7/18 4.5 7/16/18
the output is:
2.2, 7/2/18 3.2, 7/7/18 4.5, 7/16/18
public class MileageTrackerNode {
private double miles; // Node data
private String date; // Node data
private MileageTrackerNode nextNodeRef; // Reference to the next node
public MileageTrackerNode() {
miles = 0.0;
date = "";
nextNodeRef = null;
}
// Constructor
public MileageTrackerNode(double milesInit, String dateInit) {
this.miles = milesInit;
this.date = dateInit;
this.nextNodeRef = null;
}
// Constructor
public MileageTrackerNode(double milesInit, String dateInit, MileageTrackerNode nextLoc) {
this.miles = milesInit;
this.date = dateInit;
this.nextNodeRef = nextLoc;
}
/* Insert node after this node.
Before: this -- next
After: this -- node -- next
*/
public void insertAfter(MileageTrackerNode nodeLoc) {
MileageTrackerNode tmpNext;
tmpNext = this.nextNodeRef;
this.nextNodeRef = nodeLoc;
nodeLoc.nextNodeRef = tmpNext;
}
// Get location pointed by nextNodeRef
public MileageTrackerNode getNext() {
return this.nextNodeRef;
}
public void printNodeData() {
System.out.println(this.miles + ", " + this.date);
}
}
Trending now
This is a popular solution!
Step by step
Solved in 5 steps with 1 images