/* LinkedList is a linked list implementation of the List interface.
* Implements all optional list operations, and permits all elements (including null).
* In addition to implementing the List interface, the LinkedList class provides uniformly named methods to get,
* remove and insert an element at the beginning and end of the list.
* These operations allow linked lists to be used as a stack, queue, or double-ended queue.
*/
package collection.list;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class LinkedListDemo {
public LinkedListDemo() {
super();
}
public static void main(String[] args){
/* Linked list simple example
* LinkedList of type String
*/
simpleLinkedList();
/* LinkedList emaple with Employee class objects
* with sorting, iterating in forward and backword direction
*/
LinkedList<Employee> employee = employeeLinkedList();
linkedListOperations(employee);
}
public static LinkedList<Employee> employeeLinkedList(){
LinkedList<Employee> employee= new LinkedList<Employee>();
employee.add(new Employee(12,"Bipasha","AB+"));
employee.add(new Employee(25,"Kenith","B+"));
employee.add(new Employee(82,"Alia","A-"));
employee.add(new Employee(41,"Priti","AB-"));
employee.add(new Employee(20,"John","B-"));
employee.add(new Employee(89,"Khali","AB-"));
Iterator iterator = employee.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
Collections.sort(employee);
System.out.println("\n\nEmployee's after sorting by id in ascending order");
Iterator iter = employee.iterator();
while(iter.hasNext()){
System.out.println(iter.next());
}
System.out.println("\n\nEmployee's after sorting by id in descending order");
Iterator descItr = employee.descendingIterator();
while(descItr.hasNext()){
System.out.println(descItr.next());
}
return employee;
}
public static void simpleLinkedList(){
System.out.println("Enter");
List<String> linkedList= new LinkedList<String>();
linkedList.add("Hey");
linkedList.add("How");
linkedList.add("Are");
linkedList.add("You");
linkedList.add("Dude");
Iterator itr = linkedList.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
System.out.println(linkedList);
}
private static void linkedListOperations(LinkedList<Employee> employee) {
System.out.println("\n\nAdding Employee in LinkedList");
employee.add(new Employee(100,"Rockstar","A+"));
for(Employee list : employee){
System.out.println(list);
}
System.out.println("\n\nRemoving Employee in LinkedList");
for(Employee emp:employee){
if(emp.getEmpId()==25){
employee.remove(emp);
System.out.println("Employee id : 25 deleted");
break;
}
}
System.out.println("\n\nAfter shuffling LinkedList");
Collections.shuffle(employee);
for(Employee list : employee){
System.out.println(list);
}
}
}
* Implements all optional list operations, and permits all elements (including null).
* In addition to implementing the List interface, the LinkedList class provides uniformly named methods to get,
* remove and insert an element at the beginning and end of the list.
* These operations allow linked lists to be used as a stack, queue, or double-ended queue.
*/
package collection.list;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class LinkedListDemo {
public LinkedListDemo() {
super();
}
public static void main(String[] args){
/* Linked list simple example
* LinkedList of type String
*/
simpleLinkedList();
/* LinkedList emaple with Employee class objects
* with sorting, iterating in forward and backword direction
*/
LinkedList<Employee> employee = employeeLinkedList();
linkedListOperations(employee);
}
public static LinkedList<Employee> employeeLinkedList(){
LinkedList<Employee> employee= new LinkedList<Employee>();
employee.add(new Employee(12,"Bipasha","AB+"));
employee.add(new Employee(25,"Kenith","B+"));
employee.add(new Employee(82,"Alia","A-"));
employee.add(new Employee(41,"Priti","AB-"));
employee.add(new Employee(20,"John","B-"));
employee.add(new Employee(89,"Khali","AB-"));
Iterator iterator = employee.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
Collections.sort(employee);
System.out.println("\n\nEmployee's after sorting by id in ascending order");
Iterator iter = employee.iterator();
while(iter.hasNext()){
System.out.println(iter.next());
}
System.out.println("\n\nEmployee's after sorting by id in descending order");
Iterator descItr = employee.descendingIterator();
while(descItr.hasNext()){
System.out.println(descItr.next());
}
return employee;
}
public static void simpleLinkedList(){
System.out.println("Enter");
List<String> linkedList= new LinkedList<String>();
linkedList.add("Hey");
linkedList.add("How");
linkedList.add("Are");
linkedList.add("You");
linkedList.add("Dude");
Iterator itr = linkedList.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
System.out.println(linkedList);
}
private static void linkedListOperations(LinkedList<Employee> employee) {
System.out.println("\n\nAdding Employee in LinkedList");
employee.add(new Employee(100,"Rockstar","A+"));
for(Employee list : employee){
System.out.println(list);
}
System.out.println("\n\nRemoving Employee in LinkedList");
for(Employee emp:employee){
if(emp.getEmpId()==25){
employee.remove(emp);
System.out.println("Employee id : 25 deleted");
break;
}
}
System.out.println("\n\nAfter shuffling LinkedList");
Collections.shuffle(employee);
for(Employee list : employee){
System.out.println(list);
}
}
}
Comments
Post a Comment