Untitled
unknown
plain_text
3 years ago
18 kB
14
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...