Untitled

 avatar
user_3924995
plain_text
5 months ago
3.6 kB
4
Indexable
package oe.wd;

import java.io.*;
import java.util.*;
import java.util.stream.Collectors;

public class MainPerson {
    public static void main(String[] args) {

        Person p1 = new Person("Gloria", 32, "Budapest");
        Person p2 = new Person("Melman", 31, "London");
        Person p3 = new Person("Alex", 28, "Berlin");
        Person p4 = new Person("Martin", 18, "Debrecen");

        ArrayList<Person> people = new ArrayList<Person>();
        people.add(p1);
        people.add(p2);
        people.add(p3);
        people.add(p4);

        for(Person p : people){
            System.out.println(p);
        }

        System.out.println("Display the names of people older than 30 years");
        people.stream().filter(person -> person.getAge() > 30).forEach(person -> System.out.println(person.getName()));

        System.out.println("List the people who live in cities that begin with letter ’B’.");
        people.stream().filter(person -> person.getCity().startsWith("B")).forEach(person -> System.out.println(person));

        System.out.println("Sort the list from the previous query alphabetically.");
        people.stream().filter(person -> person.getCity().startsWith("B")).sorted(Comparator.comparing(Person :: getName)).forEach(person -> System.out.println(person));

        System.out.println("Find the average age of all the people in the original list.");
        System.out.println(people.stream().collect(Collectors.averagingInt(person -> person.getAge())));

        HashMap<Integer, Person> peopleHashMap = new HashMap<>();
        peopleHashMap.put(1, p1);
        peopleHashMap.put(2, p2);
        peopleHashMap.put(3, p3);
        peopleHashMap.put(4, p4);

        System.out.println("Create a HashMap to store the objects of Person class. Iterate over the HashMap and print\n" +
                "each person’s name and age.");
        for(Person p : peopleHashMap.values()){
            System.out.println(p.getName() + " " + p.getAge());
        }

        LinkedList<String> namesList = new LinkedList<>();
        try{

            FileOutputStream fos = new FileOutputStream("names.txt");
            OutputStreamWriter osw = new OutputStreamWriter(fos);
            PrintWriter pw = new PrintWriter(osw);

            for(Person p : people){
                pw.println(p.getName());
            }

            pw.close();

            FileInputStream fis = new FileInputStream("names.txt");
            InputStreamReader isr = new InputStreamReader(fis);
            BufferedReader br = new BufferedReader(isr);

            String line;
            while((line = br.readLine()) != null){
                namesList.add(line);
            }

            br.close();

            System.out.println("Names stored in a Linked List");
            for(String name : namesList){
                System.out.println(name);
            }
        }catch(Exception ex){
            System.out.println("There was a problem.");

            try{
                FileOutputStream fos2 = new FileOutputStream("objects.txt");
                ObjectOutputStream oos = new ObjectOutputStream(fos2);
                oos.writeObject(namesList);
                fos2.close();
                oos.close();


                FileInputStream fis2 = new FileInputStream("objects.txt");
                ObjectInputStream ois = new ObjectInputStream(fis2);
                ois.readObject(namesList);
                fis2.close();
                ois.close();


            }catch(Exception ex2){
                System.out.println("There was a problem an error.");
            }
        }

    }
}
Editor is loading...
Leave a Comment