Untitled
unknown
plain_text
2 years ago
18 kB
3
Indexable
import java.io.*; import java.sql.*; import java.util.*; import java.util.stream.Collectors; //class FirDeExecutie extends Thread{ // String cuvant; // File fisier; // int nrAparitii; // // FirDeExecutie(String cuvant, File fisier){ // this.cuvant = cuvant; // this.fisier = fisier; // nrAparitii = 0; // } // // @Override // public void run(){ // try{ // BufferedReader fin = new BufferedReader(new FileReader(fisier)); // String line; // while((line = fin.readLine()) != null){ // for(String cuv:line.split("[ .,?!;]")){ // if(cuv.isEmpty()) // continue; // else{ // if(cuv.equalsIgnoreCase(cuvant)) // nrAparitii++; // } // } // } // afisare(); // } // catch (IOException ex){ // System.out.println("Eroare la citirea din fisier"); // } // } // // public void afisare(){ // System.out.println("In fisierul " + fisier.getName() + ", cuvantul " + cuvant + " se gaseste de " + nrAparitii + " ori."); // } //} class Automobil{ String marca; String model; int capacitate; int pret; public Automobil(String marca, String model, int capacitate, int pret) { this.marca = marca; this.model = model; this.capacitate = capacitate; this.pret = pret; } public String getMarca() { return marca; } public void setMarca(String marca) { this.marca = marca; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getCapacitate() { return capacitate; } public void setCapacitate(int capacitate) { this.capacitate = capacitate; } public int getPret() { return pret; } public void setPret(int pret) { this.pret = pret; } @Override public String toString() { return "Automobil{" + "marca='" + marca + '\'' + ", model='" + model + '\'' + ", capacitate=" + capacitate + ", pret=" + pret + '}'; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Automobil automobil = (Automobil) o; return capacitate == automobil.capacitate && pret == automobil.pret && Objects.equals(marca, automobil.marca) && Objects.equals(model, automobil.model); } @Override public int hashCode() { return Objects.hash(marca, model, capacitate, pret); } } class A{ public static void metoda(String s) { System.out.println("A" + s); } } class B extends A{ public static void metoda(String s){ System.out.println("B" + s); } public void metoda(String s, String t){ System.out.println("B" + s + t); } } class Persoana{ String nume; int varsta; public Persoana(String nume, int varsta){ this.nume = nume; this.varsta = varsta; System.out.println("CONSTRUCTOR"); } } class FirDeExecutie extends Thread{ ArrayList<String> cuvinte; int n; File fisier; FirDeExecutie(int n, File fisier){ this.cuvinte = new ArrayList<>(); this.n = n; this.fisier = fisier; } @Override public void run(){ try{ BufferedReader fin = new BufferedReader(new FileReader(fisier)); String linie; while((linie = fin.readLine()) != null){ for(String cuvant:linie.split("[ ,./?;!]")){ if(cuvant.isEmpty()) continue; else{ if(cuvant.length() == n) cuvinte.add(cuvant); } } } afisare(); } catch (IOException e){ System.out.println("Eroare la citirea din fisier"); } } public void afisare(){ for(String cuvant:cuvinte){ System.out.print(cuvant + " "); } System.out.println(); } } class DiplomaLicenta{ int serie; String absolvent; int an; String facultate; String specializare; double medie; public DiplomaLicenta(int serie, String absolvent, int an, String facultate, String specializare, double medie) { this.serie = serie; this.absolvent = absolvent; this.an = an; this.facultate = facultate; this.specializare = specializare; this.medie = medie; } public int getSerie() { return serie; } public void setSerie(int serie) { this.serie = serie; } public String getAbsolvent() { return absolvent; } public void setAbsolvent(String absolvent) { this.absolvent = absolvent; } public int getAn() { return an; } public void setAn(int an) { this.an = an; } public String getFacultate() { return facultate; } public void setFacultate(String facultate) { this.facultate = facultate; } public String getSpecializare() { return specializare; } public void setSpecializare(String specializare) { this.specializare = specializare; } public double getMedie() { return medie; } public void setMedie(double medie) { this.medie = medie; } @Override public String toString() { return "DiplomaLicenta{" + "serie=" + serie + ", absolvent='" + absolvent + '\'' + ", an=" + an + ", facultate='" + facultate + '\'' + ", specializare='" + specializare + '\'' + ", medie=" + medie + '}'; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; DiplomaLicenta that = (DiplomaLicenta) o; return serie == that.serie && an == that.an && Double.compare(that.medie, medie) == 0 && Objects.equals(absolvent, that.absolvent) && Objects.equals(facultate, that.facultate) && Objects.equals(specializare, that.specializare); } @Override public int hashCode() { return Objects.hash(serie, absolvent, an, facultate, specializare, medie); } } class X{ public int x = 1; public X(){ x++; } } class Y extends X{ public int x = 1; public Y(){ x++; } } class Z extends Y{ public Z(){ x++; } } class Concert{ String denumire; String localitate; double pretBilet; int numarLocuri; public Concert(String denumire, String localitate, double pretBilet, int numarLocuri) { this.denumire = denumire; this.localitate = localitate; this.pretBilet = pretBilet; this.numarLocuri = numarLocuri; } public String getDenumire() { return denumire; } public void setDenumire(String denumire) { this.denumire = denumire; } public String getLocalitate() { return localitate; } public void setLocalitate(String localitate) { this.localitate = localitate; } public double getPretBilet() { return pretBilet; } public void setPretBilet(double pretBilet) { this.pretBilet = pretBilet; } public int getNumarLocuri() { return numarLocuri; } public void setNumarLocuri(int numarLocuri) { this.numarLocuri = numarLocuri; } @Override public String toString() { return "Concert{" + "denumire='" + denumire + '\'' + ", localitate='" + localitate + '\'' + ", pretBilet=" + pretBilet + ", numarLocuri=" + numarLocuri + '}'; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Concert concert = (Concert) o; return Double.compare(concert.pretBilet, pretBilet) == 0 && numarLocuri == concert.numarLocuri && Objects.equals(denumire, concert.denumire) && Objects.equals(localitate, concert.localitate); } @Override public int hashCode() { return Objects.hash(denumire, localitate, pretBilet, numarLocuri); } } class FirDeExecutie2 extends Thread{ static Double pmax; File fisier; static int contor = 0; FirDeExecutie2(Double pmax, File fisier){ FirDeExecutie2.pmax = pmax; this.fisier = fisier; } @Override public void run(){ try{ BufferedReader fin = new BufferedReader(new FileReader(fisier)); String linie; while((linie = fin.readLine()) != null){ Double pretBilet = Double.valueOf(linie.split(",")[2]); System.out.println(pretBilet); if(Double.compare(pretBilet, pmax) <= 0) contor++; } } catch(IOException e){ System.out.println("Eroare la citirea din fisier"); } } public static void afisare(){ System.out.println("Numarul total al concertelor care au pretul biletelor cel mult egale cu " + pmax + " este " + contor); } } //class Locomotiva{ // Firma firmaProducatoare; // int anFabricatie; // Double kmParcursi; // private static Locomotiva locomotiva; // // private Locomotiva(Firma firma, int an, Double km){ // this.firmaProducatoare = firma; // this.anFabricatie = an; // this.kmParcursi = km; // } // // public static Locomotiva getLocomotiva(){ // if(locomotiva == null){ // locomotiva = new Locomotiva("CFR", 2022, 1000.0); // } // return locomotiva; // } // // public void showLocomotiva(){ // System.out.println("Locomotiva de la firma " + firmaProducatoare + " fabricata in " + anFabricatie); // } // //} public class Main { public static void main(String[] args) throws FileNotFoundException { // Persoana p =new Persoana("Popescu Ion", 40), q = p; // // A ob = new B(); // ob.metoda("P"); Set s1 = new LinkedHashSet(); s1.add("1"); s1.add(1); s1.add(3); s1.add(2); System.out.println(s1); Y y = new Y(); Z z = new Z(); System.out.println(y.x + " " + z.x); //MODEL ANUL ACESTA //Exercitiul 2/model2023 si 3/model2019 ArrayList<Automobil> masini = new ArrayList<>(3); masini.add(new Automobil("Seat", "Leon", 1800, 15000)); masini.add(new Automobil("Audi", "A8", 2800, 50000)); masini.add(new Automobil("Volkswagen", "Golf", 1900, 5000)); masini.add(new Automobil("Audi", "A3", 2000, 10000)); System.out.println("a)"); masini.stream().filter(m -> m.getPret() >= 5000).sorted((m1, m2) -> m2.getPret() - m1.getPret()).forEach(System.out::println); System.out.println("b)"); masini.stream().map(m -> m.getMarca()).distinct().forEach(System.out::println); System.out.println("c)"); List<Automobil> masini2 = masini.stream().filter(m -> m.getCapacitate() >= 2000 && m.getCapacitate() <= 3000).collect(Collectors.toList()); masini2.forEach(System.out::println); System.out.println("d)"); System.out.println(masini.stream().filter(m -> m.getMarca().equals("Audi")).max((m1, m2) -> m1.getPret() - m2.getPret()).map(m -> m.getPret()).orElse(0)); List<DiplomaLicenta> diplome = new ArrayList<>(4); diplome.add(new DiplomaLicenta(35, "Stoica Elias", 2024, "Facultatea de Informatica", "Informatica", 9.25)); diplome.add(new DiplomaLicenta(25, "Marina Ilinca", 2023, "Facultatea de Drept", "Drept", 9.57)); diplome.add(new DiplomaLicenta(14, "Chiriac Ella", 2024, "Facultatea de Informatica", "Informatica", 10)); diplome.add(new DiplomaLicenta(23, "Semen Valentin", 2019, "Facultatea de Informatica", "Informatica", 9.10)); System.out.println("a)"); diplome.stream().filter(d -> d.getAn() >= 2020 && d.getAn() <= 2030).sorted((m1, m2) -> Double.compare(m2.getMedie(), m1.getMedie())).forEach(System.out::println); System.out.println("b)"); diplome.stream().filter(d -> d.getFacultate().equals("Facultatea de Informatica") && d.getAn() == 2024).map(DiplomaLicenta::getSpecializare).distinct().forEach(System.out::println); System.out.println("c)"); List<String> diplome2 = diplome.stream().filter(d -> d.getMedie() == 10).map(DiplomaLicenta::getAbsolvent).collect(Collectors.toList()); diplome2.stream().forEach(System.out::println); System.out.println("d)"); System.out.println(diplome.stream().filter(d -> d.getSpecializare().equals("Informatica")).collect(Collectors.toList()).size()); List<Concert> concerte = new ArrayList<>(3); concerte.add(new Concert("Concert1", "Bucuresti", 100, 100)); concerte.add(new Concert("Concert2", "Bucuresti", 200, 2000)); concerte.add(new Concert("Concert3", "Galati", 300, 3000)); System.out.println("a)"); concerte.stream().filter(c -> c.getLocalitate().equals("Bucuresti")).sorted((c1, c2) -> Double.compare(c2.getPretBilet(), c1.getPretBilet())).forEach(System.out::println); System.out.println("b)"); concerte.stream().map(Concert::getLocalitate).sorted((l1, l2) -> l1.compareTo(l2)).distinct().forEach(System.out::println); System.out.println("c)"); List<Concert> concerte2 = concerte.stream().filter(c -> c.getNumarLocuri() > 500).collect(Collectors.toList()); concerte2.forEach(System.out::println); System.out.println("d)"); concerte.stream().map(Concert::getLocalitate).distinct().collect(Collectors.toList()).forEach(l -> System.out.println("Localitatea " + l + " are urmatoarele concerte: " + concerte.stream().filter(c-> c.getLocalitate().equals(l)).collect(Collectors.toList()))); // System.out.println("Ex2 - MODEL ANUL ACESTA SI MODEL 2019"); // String cuvant = "urat"; File f1 = new File("ex1.txt"); File f2 = new File("ex2.txt"); File f3 = new File("ex3.txt"); // FirDeExecutie fir1 = new FirDeExecutie(cuvant, f1); // FirDeExecutie fir2 = new FirDeExecutie(cuvant, f2); // FirDeExecutie fir3 = new FirDeExecutie(cuvant, f3); // int n = 5; // FirDeExecutie fir1 = new FirDeExecutie(n, f1); // FirDeExecutie fir2 = new FirDeExecutie(n, f2); // FirDeExecutie fir3 = new FirDeExecutie(n, f3); // fir1.start(); // fir2.start(); // fir3.start(); try{ Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/Angajati"); Scanner sc = new Scanner(System.in); double s = sc.nextDouble(); int v = sc.nextInt(); String sql = "SELECT * FROM Angajati where Varsta < ? and Salariu > ?"; PreparedStatement prstmt = con.prepareStatement(sql); prstmt.setInt(1, v); prstmt.setDouble(2, s); prstmt.executeQuery(); } catch (SQLException e){ System.out.println("Eroare la baza de date"); } try{ Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/Diplome"); Scanner sc = new Scanner(System.in); int an_minim = sc.nextInt(); int an_maxim = sc.nextInt(); String den_spec = sc.next(); String sql = "SELECT * FROM DiplomeLicenta where an > ? and an < ? and specializare == ?"; PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, an_minim); pstmt.setInt(2, an_maxim); pstmt.setString(3, den_spec); ResultSet result = pstmt.executeQuery(); List<DiplomaLicenta> diplomee = new ArrayList<>(); while(result.next()){ DiplomaLicenta d = new DiplomaLicenta(result.getInt("serie"), result.getString("absolvent"), result.getInt("an"), result.getString("facultate"), result.getString("specializare"), result.getDouble("medie")); diplomee.add(d); } } catch(SQLException e){ System.out.println("Eroare la baza de date"); } System.out.println("Introdu o valoare pentru pmax: "); Scanner sc = new Scanner(System.in); Double pmax = sc.nextDouble(); FirDeExecutie2 firDeExecutie21 = new FirDeExecutie2(pmax, f1); FirDeExecutie2 firDeExecutie22 = new FirDeExecutie2(pmax, f2); FirDeExecutie2 firDeExecutie23 = new FirDeExecutie2(pmax, f3); firDeExecutie21.start(); firDeExecutie22.start(); firDeExecutie23.start(); try { firDeExecutie21.join(); firDeExecutie22.join(); firDeExecutie23.join(); } catch (InterruptedException e) { e.printStackTrace(); } FirDeExecutie2.afisare(); String sir = "academician"; int x1 = sir.lastIndexOf("c"); int x2 = sir.indexOf("c"); sir = sir.substring(x2, x1); System.out.println(sir); } }
Editor is loading...