Sunteți pe pagina 1din 29

CURSUL 1 SI 2

package CURS1;

import java.util.Scanner;

public class Ex1 {


/* Functia main- de la asta porneste(entry point)
* static inseamna ca este una pt toate instantele
* void- tipul returnat
* String[] args- le ia ca stringuri mai intai
*
*
*
* TIPURI PRIMITIVE DE DATE: int, double,boolean,string etc
* Ce este o functie? o functie etse un set de instructiuni pe care le scriem o data
si le apelam dupa de mai multe ori
* o functie/subprogram este caracterizat prin tipReturnat,
numeSubprogram,ListaParametrii
*/

public static int sumDigits(int number) //sumDigits-pot sa pun


orice nume, iar int number este parametru
{
int suma=0; //static am o singura
variablia ....

while(number!=0) {
suma=suma+number%10;
number=number/10;
}
return suma;
}

public static void main(String[] args) {


System.out.println("Hello"); //Imi afiseaza mesajul

//In orice limab de programare exista -conditionala: IF


// -repetitiva: WHILE si FOR si DO
WHILE
//
//Se dau 2 nr intregi. Sa se afiseze suma cifrelor pentru fiecare numar
in parte!!!!!!!!!!!!

//date de intrare: cele 2 numere : no1 si no2


//date de iesire: suma cifrelor pt fiecare dintre no1 si no2

int no1 , no2;

Scanner scan = new Scanner(System.in); //Clasa Scanner- imi da


permisiunea sa citesc de la tastatura sau din fisier
//scan- denumire de variabila
System.out.println("Da primul nr:");
no1= scan.nextInt(); // scan.- este un
container(clasa) si afisez diverse metode
System.out.println("Da al doilea nr:");
no2= scan.nextInt();
System.out.println("Primul numar: "+ no1);
System.out.println("Al 2-lea nr: "+no2);

System.out.println("Suma cifrelor pt numarul "+ no1 + "este:" +


sumDigits(no1));
System.out.println("Suma cifrelor pt numarul "+ no2 + "este:" +
sumDigits(no2));

scan.close();

}
}

package CURS1;

import java.util.Scanner;

public class Ex2 {

public static int maxim3Numere(int no1,int no2,int no3) {

if(no1>no2&&no1>no3)
return no1;
if(no2>no1&&no2>no3)
return no2;
if(no3>no1&&no3>no2)
return no3;

return -1;
}
public static boolean testDigits(int number)
{
while(number!=0) {
if(number%10%2==1)
return false;
number=number/10;
}
return true;
}

public static void main(String[] args) {


//Se dau 2 numere intregi. sa se afiseze suma cifrelor pentru fiecare
numar in parte
//date de intrare: cele 2 numere , no1, no2
//date de intrare: suma cifrelor pentru fiecare dintre no1 si no2

//System.out.println("Testez functia maxim:"+maxim3Numere(22,33,44));


//System.out.println("testez functia
testDigists"+testDigits(232)+""+testDigits(666));

Scanner scan = new Scanner(System.in);

System.out.println("Da primul nr:");


int no1 = scan.nextInt();
System.out.println("Da al doilea nr:");
int no2 = scan.nextInt();
System.out.println("Da al treilea lea numar");
int no3=scan.nextInt();

System.out.println("Primul numar este:"+no1);


System.out.println("Al doilea numar este:"+no2);
System.out.println("Al treilea numar numar este:"+no3);

if(testDigits(maxim3Numere(no1,no2,no3)))
System.out.println("Se respecta conditia");
else
System.out.println("NU se respecta conditia");

scan.close();
}

package CURS1;

import java.util.Scanner;
public class Ex3 {

public static void main(String[] args) {


//Se da un CNP. Sa se verifice daca CNP-ul apartine unei femei sau a
unui barbat.
// Daca e 1 si 5 e femeie
//Daca e 2 si 6 e barbat

Scanner sc = new Scanner(System.in);


System.out.println("Introdu CNP-UL:");
String cnp = sc.next();
System.out.println("CNP-il este: "+cnp);

if(cnp.length()==13) {
if(cnp.charAt(0)=='1'||cnp.charAt(0)=='5') {
System.out.println("Cnp ul este de femeie");

}else if(cnp.charAt(0)=='2'||cnp.charAt(0)=='6') {
System.out.println("cnp ul este de barbat");
}else {
System.out.println("cnp ul nu corespunde");
}

}else {
System.out.println("cnp ul nu are 13 cifre");
}

sc.close();
}

TEMA
TO DO:

1. Se citeste un numar de la tastatura. Sa se arate ca numaruleste par. Dacanumaruleste par


se vaafisa in consolamesajul “Numarulcititeste par”, altfelmesajul “Numarulcititeste
impar”.
De exemplu: pentrunumarul 6 se vaafisamesajul “Numarulcititeste par”.
2. Se citeste un numar de la tastatura. Sa se afiseze in
consolatoatecifrelenumaruluicu :intreele.
De exemplu: number=6738 sa fie 6:7:3:8.
3. Se citeste un numar de la tastatura. Sa se afiseze in consola cate cifreimpare are numarul.
De exemplu: pentru number = 1234567 sa se afiseze 4.
4. Se citeste un numar din fisier. Sa se afiseze in consolasumacifrelor.
De exemplu: pentru number = 12345 sa se afiseze 15.
5. Se citeste un numar din fisier. Sa se afiseze in alt fisiersumacifrelordivizibile cu 3.
De exemplu: pentru number = 36729 se vaafisa 18.
6. Se citescdouanumere. Sa se afisezenumarul care are maimultecifredivizibile cu 5.
De exemplu: pentru number1 = 5005 si number2 = 5002 se vaafisa 5005.

CURSUL 3
package CURS2;

import java.util.Scanner;

/*RECAPITULARE
* 1. scanner-citiri de la tastatura
* 2.tipuri de date primitive Java(int , double etc)
* 3.String cateva exercitii
* 4.functii/subprograme/subrutine/etc
*
*/
public class Ex1 {
//Se da un numar. Sa se determine un numar care este cel mai apropiat de numarul dat.
// EXEMPLU: 4947,53()==>47

//1.Functie pentru a determina daca un numar este prim sau nu


//2.Functie care determina primul numar prim de la un numar dat in stanga
//2.Functie care determina primul numar de la un numar dat in dreapta

//numar prim: numar care nu are alti divizori decat pe el si pe 1 <==> numarul are 2
divizori

public static boolean testPrimeDivizori(int num)


{
int count=0;
for(int index=1;index==0;index++)
if(num%index==0)
count++;
if(count==2)
return true;
return false;
}
public static boolean testPrime(int num)
{
for (int index=2;index<num;index++)
if(num%index==0)
return false;
return true;
}

/*public static int lowerPrime(int number) {


for(int index=number;index>=2;index--)
if (testPrime(index)==true)
return index;
return -1;

}*/

public static int lowerPrime(int number)


{
while(testPrime(number))
{
number--;
}
return number;
}
public static int upperPrime(int number)
{
while(!testPrime(number))
{
number++;
}
return number;
}

public static void main(String[] args) {


Scanner sc=new Scanner(System.in);
System.out.println("Ce numar doresti?");
int number=sc.nextInt();
System.out.println("Numarul introdus este: "+number);

//System.out.println("Verificare functie prim divizori: "+


testPrimeDivizori(number));
//System.out.println("Verificare functie prim: "+testPrime(number));

//System.out.println("Lower prime: "+lowerPrime);


//System.out.println("Lower prime: "+uppuerPrime);

int value1 = number-lowerPrime(number);


int value2 = upperPrime(number)-number;

if(value1>value2)
System.out.println("Valoarea cautata este : "+upperPrime(number));
if(value1<value2)
System.out.println("Valoarea cautata este: "+ lowerPrime(number));
if(value1==value2)
System.out.println("Valori echidistante: "+lowerPrime(number)
+upperPrime(number));

sc.close();
}
}

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ProblemaPrime {

        // numar prim: numar care nu are alti divizori decat pe el si pe 1 <=> numarul
care are 2 divizori
        
        public static boolean testPrimeDivizori(int num)
        {
                int count=0;
                for(int index=1;index<=num;index++)
                        if (num%index==0)
                                count++;
                
                if (count==2)
                        return true;
                return false;
        }
        
        public static boolean testPrime(int num)
        {
                for(int index=2;index<num;index++)
                        if (num%index==0)
                                return false;
                
                return true;
        }
        
        /*public static int lowerPrime(int number)
        {
                for(int index=number;index>=2;index--)
                        if (testPrime(index)==true)
                                return index;
                return -1;
        }*/
        
        public static int lowerPrime(int number)
        {
                while(!testPrime(number))
                {
                        number--;
                }
                
                return number;
        }
        
        
        public static int upperPrime(int number)
        {
                while(!testPrime(number))
                {
                        number++;
                }
                
                return number;
        }
        
        public static void main(String[] args) throws FileNotFoundException {
        
                File myObj = new File("Input.txt");
                Scanner sc=new Scanner(myObj);
                
                System.out.println("Ce numar doresti?");
                int number=sc.nextInt();
                System.out.println("Numarul introdus este: "+number);
                
                //System.out.println("Verificare functie prim divizori:
"+testPrimeDivizori(number));
                //System.out.println("Verificare functie prim: "+testPrime(number));
                
                //System.out.println("Lower prime: "+lowerPrime(number));
                //System.out.println("Lower prime: "+upperPrime(number));
                
                int value1=number-lowerPrime(number);
                int value2=upperPrime(number)-number;
                
                if (value1>value2)
                        System.out.println("Valoarea cautata este: "+upperPrime(number));
                if (value1<value2)
                        System.out.println("Valoarea cautata este: "+lowerPrime(number));
                if (value1==value2)
                        System.out.println("Valori echidistante: "+lowerPrime(number)+ "
"+upperPrime(number));
                
                sc.close();
        }

}
Se dau n numere intregi (dintr-un fisier). Din fiecare numar par sa se scada 0.5 si
pentru fiecare numar impar sa se afiseze suma cifrelor impare.

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class NumereIntregiFisier {

        public static double scad(int number) {


                double numberNew = number - 0.5;
                return numberNew;
        }

        public static int sumDigit(int number) {


                int suma = 0;
                while (number != 0) {
                        if (number % 10 % 2 == 1)
                                suma += number % 10;
                        number = number / 10;
                }

                return suma;


        }

        public static void main(String[] args) throws FileNotFoundException {

                File myObj = new File("Numere.txt");


                Scanner sc = new Scanner(myObj);

                int n = sc.nextInt();

                int readValue;


                for (int index = 1; index <= n; index++) {
                        readValue = sc.nextInt();
                        // System.out.println("Numar citit este: " + readValue);
                        if (readValue % 2 == 0) {
                                System.out.print(readValue + " este numar par!");
                                System.out.println(" Numar actualizat: " + scad(readValue));
                        } else {
                                System.out.print(readValue + " este numar impar!");
                                System.out.println(" Numar actualizat: " + sumDigit(readValue));
                        }

                }

                sc.close();
        }

}
Se dau mai multe numere intr-un fisier text (n numere). Pentru fiecare numar se
considera un acelasi k citit de la tastatura. Pentru fiecare numar, sa se afiseze k numere
inainte de numar si k numere dupa numar.
de ex
3
12 34 56
k=2
10 11 13 14
32 33 35 36
54 55 57 58

import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
public class ex3 {
        public static void lower (int n, int k)
        {
                for(int i=n-k; i<n; i++)
                        System.out.print(i + " ");
        }
        public static void upper (int n, int k)
        {
                for(int i=n+1; i<=n+k; i++)
                        System.out.print(i + " ");
        }        

        public static void main(String[] args) {


                Scanner sc = new Scanner(System.in);
                System.out.print("Introduceti k:");
                int k = sc.nextInt();
                try {
                                File myObj = new File("ex3.txt");
                                Scanner scan = new Scanner(myObj);
                                int n = scan.nextInt();
                                int x;
                                for(int i=1; i<=n; i++)
                                {
                                        x=scan.nextInt();
                                        lower(x, k);
                                        upper(x, k);
                                        System.out.println();
                                }                
                                scan.close();
                        }
                catch (FileNotFoundException e) {
                        System.out.println("An error occurred.");
                        e.printStackTrace();
                }
                sc.close();
        }
}

CURSUL 4
package Curs4;
/* Sa se creeze o clasa "Catel" cu atributele:
* numele catelului, varsta, rasa, numele proprietarului, informatia de pe microcip.
* Sa se scrie metode (constructori) care sa initializarea obiectelor de tip "Catel"
* Sa se scrie o astfel de metoda si pentru catei fara stapan.
* Sa se scrie metode "set" pentru modificarea atributelor obiectelor din clasa
* Sa se scrie metode "get" pentru aflarea valorilor atributelor
*
* Sa se scrie o metoda toString care sa returneze informatiile referitoare la un
anumit
* catel
*/

public class Catel {


private String numeCatel;
private int varsta;
private String rasa;
private String numeProprietar;
private String informatieMicrocip;
public Catel(String numeCatel, int varsta, String rasa, String numeProprietar,
String informatieMicrocip) {

this.numeCatel = numeCatel;
this.varsta = varsta;
this.rasa = rasa;
this.numeProprietar = numeProprietar;
this.informatieMicrocip = informatieMicrocip;

}
public Catel(String numeCatel, int varsta, String rasa, String
informatieMicrocip) {
this.numeProprietar="fara stapan";
this.varsta = varsta;
this.numeCatel = numeCatel;
this.informatieMicrocip = informatieMicrocip;
this.rasa = rasa;
}
public String getNumeCatel() {
return numeCatel;
}
public void setNumeCatel(String numeCatel) {
this.numeCatel = numeCatel;
}
public int getVarsta() {
return varsta;
}
public void setVarsta(int varsta) {
this.varsta = varsta;
}
public String getRasa() {
return rasa;
}
public void setRasa(String rasa) {
this.rasa = rasa;
}
public String getNumeProprietar() {
return numeProprietar;
}
public void setNumeProprietar(String numeProprietar) {
this.numeProprietar = numeProprietar;
}
public String getInformatieMicrocip() {
return informatieMicrocip;
}
public void setInformatieMicrocip(String informatieMicrocip) {
this.informatieMicrocip = informatieMicrocip;
}
@Override
public String toString() {
return "Catel [numeCatel=" + numeCatel + ", varsta=" + varsta + ",
rasa=" + rasa + ", numeProprietar="
+ numeProprietar + ", informatieMicrocip=" +
informatieMicrocip + "]";
}

package Curs4;

public class Main {

public static void main(String[] args) {


Catel c1=new Catel("Gigi",2,"Maidanez","VASILE","xxx");
Catel c2 = new Catel("Catalin",3,"Frigider","xxxxxlalalala");
//AFISARE DE LA TASTATURA:
System.out.println(c1);
System.out.println(c2);

//Am schimbat varsta primului catel si numele celui de al 2lea


c1.setVarsta(44);
c2.setNumeCatel("Anet");

System.out.println("Varsta schimbata a catelului este: "+


c1.getVarsta());
System.out.println("Numele schimbat a catelui c2 este: "+
c2.getNumeCatel());

//Sa se faca un vector de catei

Catel[] ListaCatei=new Catel[3];


ListaCatei[0]=c1;
ListaCatei[1]=c2;

Catel c3=new Catel("Oti",2,"Buldog","PIZZA","iugfig");


ListaCatei[2]=c3;

//Sa se afiseze TOTI cateii din vector!


/*for(int i=0;i<ListaCatei.length;i++) {
System.out.println(ListaCatei[i]);

}*/

//Sa se afiseze acei catei care au varsta intre 1si 4 ani


for(int i=0;i<ListaCatei.length;i++)
{
if (ListaCatei[i].getVarsta()>1&&ListaCatei[i].getVarsta()<4) {
System.out.println(ListaCatei[i]);
}
}

//Sa se ordoneze cateii din lista, crescator dupa varsta


//folosim o metoda de sortare scrisa de noi(bubble sort)

for (int i=0;i<ListaCatei.length-1;i++) {


for(int j=i+1;j<ListaCatei.length;j++) {
if(ListaCatei[i].getVarsta()>ListaCatei[j].getVarsta()) {
Catel aux = ListaCatei[i];
ListaCatei[i]= ListaCatei[j];
ListaCatei[j]=aux;

}
}
}
//afisare vector sortat
System.out.println("lista de catei in ordinea crescatoare a varstelor:
n");
for(int i=0;i<ListaCatei.length;i++) {
System.out.println(ListaCatei[i]);
}

CURSUL 5
package Curs5;
/*Se considera un magazine de tricouri, fiecare tricou este caracterizat prin ID,
descriere, culoare, marime, pret si numarul de bucati. Tricourile intra, s sa facem
un inventor sis a tiparim la consola raportul rezultat dupa un anue achizitioneaza
sau ies (se vand din magazin). Dorimmit numar de tranzactii efectuat.
Fiecare tranzactie are urm descriere:
- ID-ul tricoului care se tranzactioneaza;
- tipul tranzactiei (vanzare/cumparare);
- nr de bucati tranzactionate.
- pret
Dorim 2 rapoarte, unu in ordine crescatoare a nr de bucati si altul in ordine
alfabetica a descrierii.
Taskuri1:
- definirea clasei tricou cu atributele precizate;
- definirea unui container / vector de tipul tricou si afisarea tricourilor cu
ID-ul nr prim;
- sortarea tuturor tricourilor din container dupa pret;

Tricou ID, descriere, culoare, marime, nrBucati


*/
public class Tricou {

private int ID;


private String Descriere;
private String Culoare;
private String marime;
private double pret;
private int nrBucati;
@Override
public String toString() {
return "Tricou [ID=" + ID + ", Descriere=" + Descriere + ", Culoare=" +
Culoare + ", marime=" + marime
+ ", pret=" + pret + ", nrBucati=" + nrBucati + "]";
}
public Tricou(int iD, String descriere, String culoare, String marime, double
pret, int nrBucati) {
ID = iD;
Descriere = descriere;
Culoare = culoare;
this.marime = marime;
this.pret = pret;
this.nrBucati = nrBucati;
}
public int getID() {
return ID;
}
public double getPret() {
return pret;
}

}
package Curs5;

import java.util.ArrayList;

import java.util.Collections;

public class Main {

public static boolean nrPrim(int nr) {

for(int i=2;i<nr;i++) {

if(nr%i==0) {

return false;

return true;

public static void main(String[] args) {

Tricou t1=new Tricou(2,"g23","alb","XXL",5,22);

Tricou t2=new Tricou(3,"ggg23","negru","XL",55,73);


Tricou t3=new Tricou(242,"hss","blue","L",99,7);

Tricou t4=new Tricou(644,"kkk","maro","S",76,90);

//Creare ArrayList

ArrayList<Tricou> listaTricou=new ArrayList<Tricou>();

listaTricou.add(t1);

listaTricou.add(t2);

listaTricou.add(t3);

listaTricou.add(t4);

for(int i=0;i<listaTricou.size();i++) {

if(nrPrim(listaTricou.get(i).getID())) {

System.out.println(listaTricou.get(i));

Collections.sort(listaTricou,new ComparatorTricou());

for(int i=0;i<listaTricou.size();i++) {

System.out.println(listaTricou.get(i));

package Curs5;
import java.util.Comparator;

public class ComparatorTricou implements Comparator<Tricou> {

@Override
public int compare(Tricou o1, Tricou o2) {
if(o1.getPret()>o2.getPret()) {
return 1;
}
if(o1.getPret()<o2.getPret()) {
return -1;
}
return 0;
}
}

CURSUL 6
CURSUL 8(angajat1)
package Curs8Angajat;
/*
* Angajat
- ID
- numesiprenume
- CNP
- salariu

Secretara extends Angajat


- domeniuActivitate

Profesor

*/

public class Angajat {


private int ID;
private String numesiprenume;
private int CNP;
private double Salariu;

public Angajat(int iD, String numesiprenume, int cNP, double salariu) {


ID = iD;
this.numesiprenume = numesiprenume;
CNP = cNP;
Salariu = salariu;
}

public int getID() {


return ID;
}

public void setID(int iD) {


ID = iD;
}

public String getNumesiprenume() {


return numesiprenume;
}

public void setNumesiprenume(String numesiprenume) {


this.numesiprenume = numesiprenume;
}

public int getCNP() {


return CNP;
}

public void setCNP(int cNP) {


CNP = cNP;
}

public double getSalariu() {


return Salariu;
}

public void setSalariu(double salariu) {


Salariu = salariu;
}

@Override
public String toString() {
return "Angajat [ID=" + ID + ", numesiprenume=" + numesiprenume + ",
CNP=" + CNP + ", Salariu=" + Salariu + "]";
}

package Curs8Angajat;

public class Secretara extends Angajat {


private String domeniudeactivitate;

public Secretara(int iD, String numesiprenume, int cNP, double salariu, String
domeniudeactivitate) {
super(iD, numesiprenume, cNP, salariu);
this.domeniudeactivitate = domeniudeactivitate;
}

public String getDomeniudeactivitate() {


return domeniudeactivitate;
}

public void setDomeniudeactivitate(String domeniudeactivitate) {


this.domeniudeactivitate = domeniudeactivitate;
}

@Override
public String toString() {
return super.toString()+"Secretara [domeniudeactivitate=" +
domeniudeactivitate + "]";
}

package Curs8Angajat;

public class FemeieServiciu extends Angajat{

private String sector;

public FemeieServiciu(int iD, String numesiprenume, int cNP, double salariu,


String sector) {
super(iD, numesiprenume, cNP, salariu);
this.sector = sector;
}

public String getSector() {


return sector;
}

public void setSector(String sector) {


this.sector = sector;
}

@Override
public String toString() {
return super.toString()+"FemeieServiciu [sector=" + sector + "]";
}
}

package Curs8Angajat;

public class Profesor extends Angajat{


private String materiePredata;

public Profesor(int iD, String numesiprenume, int cNP, double salariu, String
materiePredata) {
super(iD, numesiprenume, cNP, salariu);
this.materiePredata = materiePredata;
}

public String getMateriePredata() {


return materiePredata;
}

public void setMateriePredata(String materiePredata) {


this.materiePredata = materiePredata;
}

@Override
public String toString() {
return super.toString()+"Profesor [materiePredata=" + materiePredata +
"]";
}

CURSUL 8(angajat b)
ackage Curs8C;
/*Clasa Angajat contine:
* numePrenume;
cnp;
salariu;
anAngajare;
*
* Constructor
* Getter si setteri
* toString()
*/
public class Angajat {
private String numePrenume;
private int CNP;
private double Salariu;
private int anAngajare;

public Angajat(String numePrenume, int cNP, double salariu, int anAngajare) {

this.numePrenume = numePrenume;
CNP = cNP;
Salariu = salariu;
this.anAngajare = anAngajare;
}

public String getNumePrenume() {


return numePrenume;
}

public void setNumePrenume(String numePrenume) {


this.numePrenume = numePrenume;
}

public int getCNP() {


return CNP;
}

public void setCNP(int cNP) {


CNP = cNP;
}

public double getSalariu() {


return Salariu;
}

public void setSalariu(double salariu) {


Salariu = salariu;
}

public int getAnAngajare() {


return anAngajare;
}

public void setAnAngajare(int anAngajare) {


this.anAngajare = anAngajare;
}
@Override
public String toString() {
return "Angajat [numePrenume=" + numePrenume + ", CNP=" + CNP + ",
Salariu=" + Salariu + ", anAngajare="
+ anAngajare + "]";
}

ackage Curs8C;

import java.util.ArrayList;
import java.util.HashSet;

public class Main {

public static void main(String[] args) {

ArrayList<Angajat>Angajati=new ArrayList<Angajat>();

Secretara s1= new Secretara("Ana", 231, 241, 7522, "Secretara sef");

System.out.println(s1);

ArrayList<String>LimbajeProgramare=new ArrayList<String>();

LimbajeProgramare.add("C++");
LimbajeProgramare.add("Java");
LimbajeProgramare.add("C Sharp");
LimbajeProgramare.add("JavaScript");
LimbajeProgramare.add("HTML");

Programator p1=new Programator("Vali", 2, 33, 12, LimbajeProgramare);


System.out.println(p1);

Angajati.add(s1);
Angajati.add(p1);

//Parcurgem lista de angajati. Verificam care este programator si daca


stie mai mult de 3 limbaje:
int count=0;
for(int i=0;i<Angajati.size();i++) {
if(Angajati.get(i) instanceof Programator)
if
(((Programator)Angajati.get(i)).getListaLimbaje().size()>=3)
count++;
}
System.out.println(count);

//IN AFARA EXERCITIULUI

ArrayList<String>Limbaje=new ArrayList<String>();

Limbaje.add("C++");
Limbaje.add("C#");
Limbaje.add("Java");
Limbaje.add("Java");
Limbaje.add("JavaScript");
Limbaje.add("Python");
Limbaje.add("HTML");

//Vrem sa verificam daca lista contine duplicate.

int ok=0;

for(int i=0;i<Limbaje.size()-1;i++)
for(int j=i+1;j<Limbaje.size();j++) {
if (Limbaje.get(i).equals(Limbaje.get(j))) {
ok=0;
break;
}
}if(ok==1)
System.out.println("Lista nu contine duplicate");
else
System.out.println("Lista contine duplicate");

HashSet<String>list=new HashSet<String>();

list.add("Python");
list.add("Python");
list.add("Java");
list.add("C++");
list.add("C#");
list.add("Ruby");

for(String Limbaj : list) {


System.out.println(Limbaj);

}
}
}

package Curs8C;

import java.util.ArrayList;

/*Clasa Programator contine:


* O lista cu limbajele de programare
*
* Constructor
* Getter si setteri
* toString()
*/
public class Programator extends Angajat {
private ArrayList<String>listaLimbaje=new ArrayList<String>();

public Programator(String numePrenume, int cNP, double salariu, int anAngajare,


ArrayList<String> listaLimbaje) {
super(numePrenume, cNP, salariu, anAngajare);
this.listaLimbaje = listaLimbaje;
}

public ArrayList<String> getListaLimbaje() {


return listaLimbaje;
}

public void setListaLimbaje(ArrayList<String> listaLimbaje) {


this.listaLimbaje = listaLimbaje;
}

@Override
public String toString() {
return "Programator [listaLimbaje=" + listaLimbaje + "]";
}

package Curs8C;
/*Clasa Secretara contine:
* Atributul Tip
*
* Constructor
* Getter si setteri
* toString()
*/
public class Secretara extends Angajat{

private String Tip;


public Secretara(String numePrenume, int cNP, double salariu, int anAngajare,
String tip) {
super(numePrenume, cNP, salariu, anAngajare);
Tip = tip;
}

public String getTip() {


return Tip;
}

public void setTip(String tip) {


Tip = tip;
}

@Override
public String toString() {
return super.toString()+"Secretara [Tip=" + Tip + "]";
}

CURSUL 8(mostenire-bicicleta)

package Curs8Mostenire;

/* Clasa Pegas extinde clasa Bicicleta adica:


* Pegas are acces la tot ce se afla in clasa Bicicleta DACA in clasa bicileta sunt
trecute cu public sau protected
*
*
*/

public class Pegas extends Bicicleta {


private int inaltimeScaun; // Variabila care este specifica doar Pegasurilor

public Pegas(int viteza, int nrViteze, int inaltimeScaun) { // Constructor


pentru clasa Pegas (trebuie sa dam in paranteza si atributele clasei Bicicleta)
super(viteza,nrViteze); // dam valori atributelor din clasa Bicicleta ->
trebuie sa fie neaparat pe prima linie in constructor!!!
this.inaltimeScaun=inaltimeScaun; // Dam valoare inaltimiiScaunului

}
public void accelerare(int increment) // Functie pentru a schimba
viteza(accelerarea)
{
viteza*=increment; // PUTEM ACCESA VITEZA DOAR DACA E TRECUTA CU
PROTECTED IN CLASA Bicicleta
}

public int getInaltimeScaun() {


return inaltimeScaun;
}

public void setInaltimeScaun(int inaltimeScaun) {


this.inaltimeScaun = inaltimeScaun;
}

@Override
public String toString() { //adaugam super.toString() - pentru a afisa si
toStringul() din clasa mama
return super.toString() + "Pegas [inaltimeScaun=" + inaltimeScaun + "]";
}

package Curs8Mostenire;

///IMPORTANT
//DACA O VARIABILA ESTE:
//PRIVATE: o putem accesa doar in clasa
//PROTECTED: o putem accesa in clasa sau in subclase(copil)
//PUBLIC: o putem accesa oriunde prin intermediul unui obiect

public class Bicicleta { // Clasa pentru bicicleta simpla


protected int viteza; // punem proteced pentru ca o sa folosim variabila viteza
in clasa copil(in cazul acesta Pegas)
private int nrViteze; // punem private pentru ca folosim variabila nrViteze
doar in aceasta clasa(Bicicleta)

public Bicicleta(int viteza, int nrViteze) { // Constructor


this.viteza = viteza;
this.nrViteze = nrViteze;
}

public void franeaza(int decrement) { //Functie pentru schimbarea


vitezei(franare)
viteza-=decrement;
}
public void accelerare(int increment) { // FUnctie pentru schimbarea
vitezei(accelerare)
viteza+= increment;
}

public int getViteza() {


return viteza;
}
public void setViteza(int viteza) {
this.viteza = viteza;
}
public int getNrViteze() {
return nrViteze;
}
public void setNrViteze(int nrViteze) {
this.nrViteze = nrViteze;
}
@Override
public String toString() {
return "Bicicleta [viteza=" + viteza + ", nrViteze=" + nrViteze + "]";
}

package Curs8Mostenire;

public class Main {

public static void main(String[] args) {

Bicicleta b1=new Bicicleta(50, 4); // Creem o bicileta simpla


System.out.println(b1); // O afisam
b1.accelerare(10); // schimbam viteza -> in acest caz se apeleaza
functia din clasa Bicicleta
System.out.println(b1);

Pegas p1=new Pegas(70,3 , 120); // Creem un Pegas(trebuie sa dam valori


si pentru atributele din clasa Mama)
// System.out.println(p1);
// p1.franeaza(3);
// System.out.println(p1);

System.out.println(p1); // Afisam pegasul ->se apeleaza si toStringul()


din claasa Bicicleta
p1.accelerare(2); // schimbam viteza->in acest caz se apeleaza functia
din clasa Pegas
System.out.println(p1);
}

CURSUL 9

S-ar putea să vă placă și