Zadanie sprzedaj kury

package pl.am.object2.lesson47;

public class Test {
    public static void main(String[] args) {
        Farma farma = new Farma();
        farma.setPies(new Pies("łatek", 15));
        farma.setKot(new Kot("mruczek", 3));

        farma.dodajZwierze(new Kura(1.9));
        farma.dodajZwierze(new Kura(2.1));
        farma.dodajZwierze(new Kura(2));
        farma.dodajZwierze(new Kura(1.5));
        farma.dodajZwierze(new Kura(2.5));
        farma.dodajZwierze(new Krowa(150));
        farma.dodajZwierze(new Krowa(150));

        System.out.println(farma);

        farma.sprzedajKury();

        System.out.println(farma);
    }
}
package pl.am.object2.lesson47;

import java.util.ArrayList;

public class Farma {
    private Kot kot;
    private Pies pies;
    private ArrayList<Zwierze> kury = new ArrayList<>();
    private ArrayList<Zwierze> krowy = new ArrayList<>();
    private double pieniadze;
    private static double kuraZaKilogram = 10;

    public Kot getKot() {
        return kot;
    }

    public void setKot(Kot kot) {
        this.kot = kot;
    }

    public Pies getPies() {
        return pies;
    }

    public void setPies(Pies pies) {
        this.pies = pies;
    }

    public ArrayList<Zwierze> getKury() {
        return kury;
    }

    public ArrayList<Zwierze> getKrowy() {
        return krowy;
    }

    public int getIloscKur() {
        return kury.size();
    }

    public int getIloscKrow() {
        return krowy.size();
    }

    public double getPieniadze() {
        return pieniadze;
    }

    //    public void dodajZwierze(Zwierze zwierze) {
//        if (zwierze instanceof Krowa) {
//            krowy.add(zwierze);
//        }
//
//        if (zwierze instanceof Kura) {
//            kury.add(zwierze);
//        }
//    }

    public void dodajZwierze(Kura kura) {
        kury.add(kura);
    }

    public void dodajZwierze(Krowa krowa) {
        krowy.add(krowa);
    }

    public static void wypiszZwierzeta(ArrayList<Zwierze> zwierzeta) {
        for (Zwierze zwierze : zwierzeta) {
            System.out.println(zwierze);
        }
    }

    public static String getZwierzentaInfo(ArrayList<Zwierze> zwierzeta) {
        StringBuilder info = new StringBuilder();
        for (Zwierze zwierze : zwierzeta) {
            info.append(zwierze.toString()).append("\n");
        }

        return info.toString();
    }

    public void sprzedajKury() {
        ArrayList<Zwierze> maleKury = new ArrayList<>();
        double masaSuma = 0;
        for (Zwierze kura : kury) {
            if (kura.getMasa() > 2.0) {
                masaSuma += kura.getMasa();
            } else {
                maleKury.add(kura);
            }
        }

        pieniadze += masaSuma * kuraZaKilogram;
        kury = maleKury;
    }

    @Override
    public String toString() {
        String info = "ilosc pienidzy: " + pieniadze + "\n ";

        info += getIloscKur() + " kur: \n";

        info += getZwierzentaInfo(getKury()) + "\n";

        info += getIloscKrow() + " krów: \n";
        info += getZwierzentaInfo(getKrowy());

        return info;
    }
}
package pl.am.object2.lesson47;

public abstract class Zwierze {
    protected double masa;

    public Zwierze(double masa) {
        this.masa = masa;
    }

    public abstract void dajGlos();

    public double getMasa() {
        return masa;
    }
}

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *