CSE143X Sample Program handout #13 ListNode Class -------------- // ListNode is a class for storing a single node of a linked list storing // integer values. It has two public data fields for the data and the link to // the next node in the list and has three constructors. public class ListNode { public int data; // data stored in this node public ListNode next; // link to next node in the list // post: constructs a node with data 0 and null link public ListNode() { this(0, null); } // post: constructs a node with given data and null link public ListNode(int data) { this(data, null); } // post: constructs a node with given data and given link public ListNode(int data, ListNode next) { this.data = data; this.next = next; } } LinkedIntList Class ------------------- public class LinkedIntList { private ListNode front; <methods> } We could define the following method for the LinkedIntList class: // post: appends the given value to the end of the list public void add(int value) { if (front == null) front = new ListNode(value); else { ListNode current = front; while (current.next != null) current = current.next; current.next = new ListNode(value); } } Second version of sample code ----------------------------- public class ListTest2 { public static void main(String[] args) { ListNode list = new ListNode(3, new ListNode(7, new ListNode(12))); System.out.println(list.data + " " + list.next.data + " " + list.next.next.data); } }
Stuart Reges
Last modified: Fri Oct 26 12:28:38 PDT 2012