print a linear linked list into a table
Posted
by
user1796970
on Stack Overflow
See other posts from Stack Overflow
or by user1796970
Published on 2012-11-04T16:53:12Z
Indexed on
2012/11/04
17:00 UTC
Read the original article
Hit count: 513
I am attempting to print some values i have stored into a LLL into a readable table. The data i have stored is the following :
DEBBIE STARR F 3 W 1000.00
JOAN JACOBUS F 9 W 925.00
DAVID RENN M 3 H 4.75
ALBERT CAHANA M 3 H 18.75
DOUGLAS SHEER M 5 W 250.00
SHARI BUCHMAN F 9 W 325.00
SARA JONES F 1 H 7.50
RICKY MOFSEN M 6 H 12.50
JEAN BRENNAN F 6 H 5.40
JAMIE MICHAELS F 8 W 150.00
i have stored each firstname, lastname, gender, tenure, payrate, and salary into their own List. And would like to be able to print them out in the same format that they are viewed on the text file i read them in from. i have messed around with a few methods that allow me to traverse and print the Lists, but i end up with ugly output. . .
here is my code for the storage of the text file and the format i would like to print out:
public class Payroll
{
private LineWriter lw;
private ObjectList output;
ListNode input;
private ObjectList firstname, lastname, gender, tenure, rate, salary;
public Payroll(LineWriter lw)
{
this.lw = lw;
this.firstname = new ObjectList();
this.lastname = new ObjectList();
this.gender = new ObjectList();
this.tenure = new ObjectList();
this.rate = new ObjectList();
this.salary = new ObjectList();
this.output = new ObjectList();
this.input = new ListNode();
}
public void readfile()
{
File file = new File("payfile.txt");
try{
Scanner scanner = new Scanner(file);
while(scanner.hasNextLine())
{
String line = scanner.nextLine();
Scanner lineScanner = new Scanner(line);
lineScanner.useDelimiter("\\s+");
while(lineScanner.hasNext())
{
firstname.insert1(lineScanner.next());
lastname.insert1(lineScanner.next());
gender.insert1(lineScanner.next());
tenure.insert1(lineScanner.next());
rate.insert1(lineScanner.next());
salary.insert1(lineScanner.next());
}
}
}catch(FileNotFoundException e)
{e.printStackTrace();}
}
public void printer(LineWriter lw)
{
String msg = " FirstName " + " LastName " + " Gender " + " Tenure " +
" Pay Rate " + " Salary ";
output.insert1(msg);
System.out.println(output.getFirst());
System.out.println(" " + firstname.getFirst() + " " + lastname.getFirst() + "\t" + gender.getFirst() +
"\t" + tenure.getFirst() + "\t" + rate.getFirst() + "\t" + salary.getFirst());
}
}
© Stack Overflow or respective owner