Java.pp
Java.pp
1. Sa se citeasca toate produsele din fisierul de intrare si sa se adauge toate intr-o colectie.
In paralel, sa se realizeze 3 liste diferite, pentru fiecare tip de produs existent si sa se
adauge produsele pe categoriile existente.
2. public static void main(String[] args) throws FileNotFoundException
3. { Scanner sc=new Scanner(new File("farmacie"));
4. ArrayList<Produse> Lista= new ArrayList<>();
5. while(sc.hasNextLine())
6. {
7. String Info=sc.nextLine();
8. if(Info!=null)
9. {
10. String[] Vector=Info.split("\\*");
11. String id=Vector[0];
12. String tip_produs=Vector[1];
13. String nume=Vector[2];
14. String descriere=Vector[3];
15. String producator=null;
16. String valabilitate=null;
17. if(Vector.length>4)
18. {
19. producator=Vector[4];
20. }
21. if(Vector.length>5)
22. {
23. valabilitate=Vector[5];
24. }
25. Produse ob1=new Produse(id,tip_produs, nume,
descriere,producator,valabilitate);
26. Lista.add(ob1);
27. }
28. }
29. for(int i=0;i<Lista.size();i++)
30. {
31. System.out.println(Lista.get(i));
32. }
33. ArrayList<Produse> Medicamente= new ArrayList<>();
34. ArrayList<Produse> DispozitiveMedicale= new ArrayList<>();
35. ArrayList<Produse> Dieta= new ArrayList<>();
36. for(int i=0;i<Lista.size();i++)
37. {
38. if(Lista.get(i).getTip_produs().equalsIgnoreCase("medicament"))
39. {
40. Medicamente.add(Lista.get(i));
41. }
42. if(Lista.get(i).getTip_produs().equalsIgnoreCase("dispozitiveMedi
cale"))
43. {
44. DispozitiveMedicale.add(Lista.get(i));
45. }
46. if(Lista.get(i).getTip_produs().equalsIgnoreCase("dieta"))
47. {
48. Dieta.add(Lista.get(i));
49. }
50. }
2.Sa se sorteze toate medicamentele dupa ID (prima componenta)
import java.util.Comparator;
public class Comparare implements Comparator<Produse>
{
@Override
public int compare(Produse o1, Produse o2)
{
if(o1.getId().compareToIgnoreCase(o2.getId()) ==-1)
{
return -1;
}
if(o1.getId().compareToIgnoreCase(o2.getId()) ==1)
{
return 1;
}
return 0;
}
}
Se da o lista de tastaturi. Sa se sorteze dupa pret toate si apoi sa se verifice daca prima tastatura
din lista sortata respecta sau nu criteriul de la punctul b.
Afisari:
1.
public static void afisare1(Cursuri ob1)
{
System.out.println("Idcurs este:"+" "+ ob1.getIdcurs());
System.out.println("Denumire curs este:"+" " + ob1.getDenumire_curs());
System.out.println("Pret curs este:" + " " + ob1.getPret_curs());
System.out.println("Data start este:" + " " + ob1.getData_de_start());
}
2.
public static void afisare2(Cursuri ob1)
{
System.out.println("Idcurs"+ " "+ ob1.getIdcurs()+"/" + "Denumire_curs
"+""
+ " " + ob1.getDenumire_curs()+"/"+"Pret curs " + " " + ob1.getPret_curs()
+ "/"+"Data start " + " "
+ " " + ob1.getData_de_start());
}
Stergere:
Sa se stearga un curs cu un ID mentionat (daca exista in lista data). Daca nu exista, atunci se
afiseaza un mesaj corespunzator.
Adaugare:
Sa se verifice daca lista este unica (nu contine duplicate), iar apoi sa se incerce adaugarea unui
curs nou. “Incercarea” poate sa fie esuata daca cursul pe care il adaugam exista deja in lista sau
poate sa fie “cu success” daca se adauga pe prima pozitie in lista data.
Acces Direct: accesul direct la o carte/carti pri introducerea numelui unui autor
Stergere:
public static void stergere(Book c1,String nume,String numeautor)
{
String[] autori=new String[9];
autori=c1.getAutor().split("#");
if(c1.getNume().compareTo(nume)==0)
{
for(int i=0;i<autori.length;i++)
{
if(c1.getAutor().compareTo(numeautor)==0);
String a=c1.getAutor().replace(numeautor, "");
c1.setAutor(a);
}
}
}
3. fiind date mai multe carti, in cazul in care exista o aceeasi carte scrisa de autori diferiti, sa se
semnaleze aceasta situatie
Clasa cu Compozitie
5. accesul direct a unui numar de telefon prin introducerea unui anumit nume de client –
implementari si testare functionalitate
public static void introducere(ArrayList<Client> Lista_clienti, String
numenou)
{
for(int i=0;i<Lista_clienti.size();i++)
{
if(Lista_clienti.get(i).getNume_client().contains(numenou))
{
System.out.println(Lista_clienti.get(i).getNumar_telefon());
}
else
System.out.println("Numele nu este gasit");
break;
}
}
1. Se formează 3 liste diferite din tot fișierul text dat, fiecare lista cu utilizatorii valizi de
cele 3 tipuri posibile. Sa se afiseze lungimea fiecarei liste, dar și primul și ultimul
element din fiecare lista.
2. Scanner sc=new Scanner(new File("Fisier"));
3. while(sc.hasNextLine())
4. {
5. String Info=sc.nextLine();
6. if(Info!=null)
7. {
8. String[] Vector=Info.split("\\*");
9. for(int i=0;i<Vector.length;i++)
10. {
11. Vector[i].trim();
12. }
13. String nume_utilizator=Vector[0];
14. String parola=Vector[1];
15. String tip=Vector[2];
16. if(Vector.length>1)
17. {
18. Administrator ob1=new
Administrator(nume_utilizator,parola,tip);
19. Lista.add(ob1);
20. }
21. if(Vector.length>2 && Vector[2].contentEquals("medic"))
22. {
23. String caracterizare=Vector[3];
24. Medic ob2=new Medic(nume_utilizator,parola,tip,caracterizare);
25. Lista.add(ob2);
26. }
27. if(Vector.length>2 && Vector[2].contentEquals("pacient"))
28. {
29. String covid=Vector[3];
30. Pacient ob3=new Pacient(nume_utilizator,parola,tip,
31. covid);
32. Lista.add(ob3);
for(int i=0;i<Lista.size();i++)
{
if(Lista.get(i).getTip_utilizator().contains("administrator"))
{
Administratori.add((User) Lista.get(i));
}
}
for(int i=0;i<Lista.size();i++)
{
if(Lista.get(i).getTip_utilizator().contains("medic"))
{
Medici.add((User) Lista.get(i));
}
}
for(int i=0;i<Lista.size();i++)
{
if(Lista.get(i).getTip_utilizator().contains("pacient"))
{
Pacienti.add((User) Lista.get(i));
}
}
Utilizator valid: utilizator care are numele de utilizator format din minim 3 caractere, iar
caracterele pot sa fie orice caracter de pe tastatura
public static void validareutilizator(ArrayList<User> Lista)
{
for(int i=0;i<Lista.size();i++)
{
if(Lista.get(i).getNume_utilizator().matches(".{3,}"))
{
System.out.println("Utilizatori valizi"+Lista.get(i).getNume_utilizator());
}
}