Skip to content

Commit 7dcd1eb

Browse files
committed
minor refactoring
1 parent f8b1a21 commit 7dcd1eb

4 files changed

Lines changed: 96 additions & 95 deletions

File tree

patternBonus/src/com/premaseem/iterator/ClientForEmployeeIterator.java

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,29 @@ public static void main(String[] args) {
99
EmployeeManger employeeManager = new EmployeeManger();
1010

1111
System.out
12-
.println("This is Iterator Pattern example where you can list all the male / female emplyee list using iterators. The data structure details are abstraced behind the iterator interface ");
13-
14-
employeeManager.addEmployee(new Employee("aseem1", "M"));
15-
employeeManager.addEmployee(new Employee("Meera1", "f"));
16-
employeeManager.addEmployee(new Employee("aseem2", "M"));
17-
employeeManager.addEmployee(new Employee("sony1", "Mf"));
18-
employeeManager.addEmployee(new Employee("Meera2", "f"));
19-
employeeManager.addEmployee(new Employee("Meera3", "f"));
20-
employeeManager.addEmployee(new Employee("Meeralast", "f"));
21-
employeeManager.addEmployee(new Employee("sony2", "fM"));
22-
employeeManager.addEmployee(new Employee("aseem1", "m"));
23-
employeeManager.addEmployee(new Employee("aseemlast", "m"));
24-
25-
employeeManager.employeeMap.put(1,new Employee("aseem1", "M"));
26-
employeeManager.employeeMap.put(2,new Employee("aseem2", "F"));
27-
employeeManager.employeeMap.put(3,new Employee("aseem3", "M"));
28-
employeeManager.employeeMap.put(1,new Employee("aseem4", "F"));
12+
.println("This is Iterator Pattern example where you can list all the male / female employee list using iterators. " +
13+
"The data structure details are abstracted behind the iterator interface ");
14+
15+
employeeManager.addEmployee(new Employee("name1", "M"));
16+
employeeManager.addEmployee(new Employee("name2", "f"));
17+
employeeManager.addEmployee(new Employee("name3", "M"));
18+
employeeManager.addEmployee(new Employee("name4", "Mf"));
19+
employeeManager.addEmployee(new Employee("name5", "f"));
20+
employeeManager.addEmployee(new Employee("name6", "f"));
21+
employeeManager.addEmployee(new Employee("name7", "fM"));
22+
employeeManager.addEmployee(new Employee("name8", "m"));
23+
employeeManager.addEmployee(new Employee("name9", "m"));
24+
employeeManager.addEmployee(new Employee("name10", "f"));
25+
26+
employeeManager.employeeMap.put(1,new Employee("name1", "M"));
27+
employeeManager.employeeMap.put(2,new Employee("name2", "F"));
28+
employeeManager.employeeMap.put(3,new Employee("name3", "M"));
29+
employeeManager.employeeMap.put(1,new Employee("name4", "F"));
2930

30-
MaleEmplyeeIterator maleEmployeeIterator = employeeManager.getMaleEmployeeIterator();
31+
MaleEmployeeIterator maleEmployeeIterator = employeeManager.getMaleEmployeeIterator();
3132
printEmployeeList(maleEmployeeIterator);
3233

33-
FeMaleEmplyeeIterator feMaleEmployeeIterator = employeeManager.getFeMaleEmployeeIterator();
34+
FeMaleEmployeeIterator feMaleEmployeeIterator = employeeManager.getFeMaleEmployeeIterator();
3435
printEmployeeList(feMaleEmployeeIterator);
3536

3637
Iterator<Employee> allEmployeeIterator = employeeManager.getAllEmployeeIterator();

patternBonus/src/com/premaseem/iterator/EmployeeManger.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,27 @@
99

1010
public class EmployeeManger {
1111

12-
List<Employee> emplyeelist = new ArrayList<Employee>();
12+
List<Employee> employeelist = new ArrayList<Employee>();
1313
Map<Integer, Employee> employeeMap = new HashMap<Integer, Employee>();
1414

1515
void addEmployee(Employee emp) {
16-
emplyeelist.add(emp);
16+
employeelist.add(emp);
1717
}
1818

1919
boolean removeEmployee(Employee emp) {
20-
return emplyeelist.remove(emp);
20+
return employeelist.remove(emp);
2121
}
2222

23-
MaleEmplyeeIterator getMaleEmployeeIterator() {
24-
return new MaleEmplyeeIterator(emplyeelist);
23+
MaleEmployeeIterator getMaleEmployeeIterator() {
24+
return new MaleEmployeeIterator(employeelist);
2525
}
2626

27-
FeMaleEmplyeeIterator getFeMaleEmployeeIterator() {
28-
return new FeMaleEmplyeeIterator(emplyeelist);
27+
FeMaleEmployeeIterator getFeMaleEmployeeIterator() {
28+
return new FeMaleEmployeeIterator(employeelist);
2929
}
3030

3131
Iterator<Employee> getAllEmployeeIterator() {
32-
return emplyeelist.iterator();
32+
return employeelist.iterator();
3333
}
3434

3535
public Iterator<Entry<Integer, Employee>> printEmployeeMap() {
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
package com.premaseem.iterator;
2+
3+
import java.util.Iterator;
4+
import java.util.List;
5+
6+
public class MaleEmployeeIterator implements Iterator<Employee> {
7+
8+
private List<Employee> employeelist;
9+
private int position;
10+
public MaleEmployeeIterator (List<Employee> employeelist){
11+
this.employeelist = employeelist;
12+
}
13+
14+
@Override
15+
public boolean hasNext() {
16+
for (; position < employeelist.size(); position++) {
17+
if ("m".equalsIgnoreCase ((employeelist.get(position)).getSex())) {
18+
return true;
19+
}
20+
}
21+
return false;
22+
}
23+
24+
@Override
25+
public Employee next() {
26+
Employee employee = employeelist.get(position);
27+
position++;
28+
return employee;
29+
}
30+
31+
@Override
32+
public void remove() {
33+
employeelist.iterator().remove();
34+
}
35+
}
36+
37+
class FeMaleEmployeeIterator implements Iterator<Employee> {
38+
39+
private List<Employee> employeelist;
40+
private int position;
41+
public FeMaleEmployeeIterator (List<Employee> employeelist){
42+
this.employeelist = employeelist;
43+
}
44+
45+
@Override
46+
public boolean hasNext() {
47+
for (; position < employeelist.size(); position++) {
48+
if ("f".equalsIgnoreCase ((employeelist.get(position)).getSex())) {
49+
return true;
50+
}
51+
}
52+
return false;
53+
}
54+
55+
@Override
56+
public Employee next() {
57+
Employee employee = employeelist.get(position);
58+
position++;
59+
return employee;
60+
}
61+
62+
@Override
63+
public void remove() {
64+
employeelist.iterator().remove();
65+
}
66+
}
67+
68+

patternBonus/src/com/premaseem/iterator/MaleEmplyeeIterator.java

Lines changed: 0 additions & 68 deletions
This file was deleted.

0 commit comments

Comments
 (0)