Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions .idea/Lambdas2-ZCW.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__junit_junit_4_9.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_1.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions lambdas2zcw/.idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions lambdas2zcw/.idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions lambdas2zcw/.idea/libraries/Maven__junit_junit_4_9.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions lambdas2zcw/.idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions lambdas2zcw/.idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions lambdas2zcw/.idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions lambdas2zcw/lambdas2zcw.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.9" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.github.stefanbirkner:system-rules:1.19.0" level="project" />
</component>
</module>
36 changes: 36 additions & 0 deletions lambdas2zcw/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.zipcodewilmington</groupId>
<artifactId>lambdas2zcw</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.github.stefanbirkner</groupId>
<artifactId>system-rules</artifactId>
<version>1.19.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
6 changes: 6 additions & 0 deletions lambdas2zcw/src/main/java/CheckPerson.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
public interface CheckPerson {
//this is search criteria
Boolean test (Person person);


}
61 changes: 61 additions & 0 deletions lambdas2zcw/src/main/java/MainClass.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
import java.time.LocalDate;
import java.time.Month;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class MainClass {
public static void printPersons(
List<Person> roster, CheckPerson tester) {
for (Person p : roster) {
if (tester.test(p)) {
p.printPerson();
}
}
}
//using lambdas
// public List<Person> getMyPeepsOver18(List<Person> myPeeps) {
// List<Person> myPeepsOver18 = myPeeps.stream().filter(p -> p.getAge() >= 18).collect(Collectors.toList());
// return myPeepsOver18;
// }

public static void main(String[] args) {
Person tp, tp1, tp2, tp3, tp4, tp5;
ArrayList<Person> myPeeps = new ArrayList<>();

tp = new Person("rashmi bapat", LocalDate.of(1994, Month.APRIL, 19), Person.Sex.FEMALE, "rbrashmi1@rediffmail.com");
//TODO create tp1,tp2,tp3,tp4;
tp1 = new Person("manasi bhide", LocalDate.of(1985, Month.AUGUST, 12), Person.Sex.FEMALE, "manasib123@yahoo.com");
tp2 = new Person("kedar limaye", LocalDate.of(1983, Month.DECEMBER, 2), Person.Sex.MALE, "klimaye@gmail.com");
tp3 = new Person("keya param", LocalDate.of(2010, Month.JUNE, 23), Person.Sex.FEMALE, "k23parm@gmx.com");
tp4 = new Person("raja kotak", LocalDate.of(2015, Month.FEBRUARY, 28), Person.Sex.MALE, "rajaKotak11@yahoo.com");
tp5 = new Person("risha kapoor", LocalDate.of(2011, Month.JULY, 25), Person.Sex.FEMALE, "risha23@gmail.com");
myPeeps.add(tp);
//add rest tp1,...
myPeeps.add(tp1);
myPeeps.add(tp2);
myPeeps.add(tp3);
myPeeps.add(tp4);
myPeeps.add(tp5);


class checkForOver18 implements CheckPerson {
@Override
public Boolean test(Person person) {
return person.getAge() >= 18;
}
}
printPersons(myPeeps, new checkForOver18());

//example using anonymous class
printPersons(myPeeps, new CheckPerson() {
@Override
public Boolean test(Person person) {
return person.getAge() >= 18;
}
});

//example using lambda
printPersons(myPeeps, person -> person.getAge() >= 18);
}
}
Loading