Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package FunctionalProgrammingHomeWork;
- import java.lang.reflect.Array;
- import java.time.Period;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.Comparator;
- import java.util.List;
- import java.util.stream.Stream;
- public class FunctionalProgramming {
- public static void main(String[] args) {
- List<Student> students = new ArrayList<Student>();
- students.add(new Student(
- "Gosho"
- , "Petrov"
- , 26
- , "56324"
- , "0887658710"
- , "gosho@mail.bg"
- , new ArrayList<Integer>(Arrays.asList(2, 3, 6))
- , "2"));
- students.add(new Student(
- "Nikola"
- , "Petrov"
- , 18
- , "56333"
- , "0886452187"
- , "niki@mail.bg"
- , new ArrayList<Integer>(Arrays.asList(5, 5, 6))
- , "1"));
- students.add(new Student(
- "Nikola"
- , "Ankov"
- , 35
- , "55871"
- , "0882540307"
- , "nikola@yahoo.bg"
- , new ArrayList<Integer>(Arrays.asList(6, 6, 6))
- , "2"));
- students.add(new Student(
- "Milena"
- , "Bikolova"
- , 21
- , "56445"
- , "0886698024"
- , "slavena@abv.bg"
- , new ArrayList<Integer>(Arrays.asList(6, 4, 6))
- , "2"));
- students.add(new Student(
- "Avrora"
- , "Jekova"
- , 19
- , "56959"
- , "0886552844"
- , "avr@abv.bg"
- , new ArrayList<Integer>(Arrays.asList(2, 3, 3))
- , "2"));
- students.add(new Student(
- "Ana"
- , "Mabeva"
- , 19
- , "56819"
- , "0886550073"
- , "ana@abv.bg"
- , new ArrayList<Integer>(Arrays.asList(4, 5, 3))
- , "1"));
- students.add(new Student(
- "Ana"
- , "Huai"
- , 21
- , "55100"
- , "0882459073"
- , "ana@abv.bg"
- , new ArrayList<Integer>(Arrays.asList(4, 5, 3))
- , "1"));
- for (Student s : students) {
- if (s.getAge() < 22) {
- System.out.println(s.getFirstName());
- }
- }
- System.out.println("---------------------------");
- ArrayList<Student> studentsCopy = new ArrayList<>();
- studentsCopy.addAll(students);
- studentsCopy.removeIf(p -> p.getAge() > 22);
- studentsCopy.forEach(p -> System.out.println(p.getFirstName()));
- System.out.println("--------All Students---------------");
- students.forEach(s -> System.out.println(s.getFirstName() + " gr. " + s.getGroupNumbers()));
- System.out.println("--------group number 2 sorted by FirstName---------------");
- List<Student> studentsGroup2Sorted = new ArrayList<Student>();
- studentsGroup2Sorted.addAll(students);
- studentsGroup2Sorted.removeIf(s -> !s.getGroupNumbers().equalsIgnoreCase("2"));
- studentsGroup2Sorted.sort((s1, s2) -> s2.getFirstName().compareTo(s1.getFirstName()));
- studentsGroup2Sorted.forEach(s -> System.out.println(s.getFirstName() + " gr. " + s.getGroupNumbers()));
- System.out.println("----Print all students whose first name is before their last name alphabetically---");
- ArrayList<Student> studentsFirstBeforeLastName = new ArrayList<>();
- studentsFirstBeforeLastName.addAll(students);
- studentsFirstBeforeLastName.removeIf((s1) -> s1.getFirstName().charAt(0) > s1.getLastName().charAt(0));
- studentsFirstBeforeLastName.forEach(s1 -> System.out.println(s1.getFirstName() + " " + s1.getLastName()));
- System.out.println("--------the first name and last name of all students with age between 18 and 24---------------");
- studentsCopy = new ArrayList<>();
- studentsCopy.addAll(students);
- studentsCopy.removeIf(c -> (c.getAge() < 18 || c.getAge() > 24));
- studentsCopy.forEach(c -> System.out.println(c.getFirstName() + " " + c.getLastName() + " " + c.getAge()));
- System.out.println("------sort the students by first name and last name in descending order----------");
- studentsCopy = new ArrayList<>();
- studentsCopy.addAll(students);
- studentsCopy.sort(
- ((s1,s2) -> s2.getFirstName().compareTo(s1.getFirstName()))
- );
- studentsCopy.forEach(s -> System.out.println(s.getFirstName()+" "+s.getLastName()+" "+s.getAge()));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement