Operátorok

Aritmetikai operátorok

 

Az aritmetikai (számolási) operátorokkal meglepetésszerűen számolni tudunk, azaz velük matematikai műveletek hajthatók végre. Nézzünk meg gyorsan egy 4 alapműveletes, futtatható Java-kódot:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    float a = 3;
    int b = 2;
    System.out.println(a + b);
    System.out.println(a - b);
    System.out.println(a * b);
    System.out.println(a / b);
    }
}

 

Végeredmény:

5.0

1.0

6.0

1.5

 

További érdekes lehetőség a maradékképzés operátora, amelyet a Java-nyelvben a % jel szimbolizál. Az alábbi kódban az osztás egész számú eredménye és maradéka is kiírásra kerül:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
   public static void main(String[] args) {
       int a = 84;
       int b = 9;
       int maradek = a % b;
       System.out.println("Az osztás eredménye: " + a / b);
       System.out.println("Az osztás maradéka: " + maradek);
    }
}


Végeredmény:

9

3

 

A programozás során gyakran van szükség olyan átmeneti tárolóadatra, amelynek lépésenként változik az értéke. Például egy adott számtartományban keresünk egy valamilyen feltételnek megfelelő számot. Ilyen ciklikus műveletek elvégzésére használhatjuk fel az úgynevezett for ciklust, amelynek részletes működését ugyan majd egy másik fejezetben mutatjuk meg, ám most kiválóan szemléltethetjük rajta a lépésenkénti értékváltozást. A kiindulás a következő: deklarálunk egy változót…

 

int a = 10;

 

..majd megnöveljük 1-gyel értékét. Ezt kétféleképpen is meg tudjuk oldani:

 

a = a + 1; vagy a += 1;

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    a += 1;
    System.out.println(a);
    }
}

 

Végeredmény:

11
 

Ennél egy kicsit praktikusabb a következő operátor:

 

a++;

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    a++;
    System.out.println(a);
    }
}

 

Végeredmény:

11

 

Most nézzük meg ezen operátor működését egy for ciklusban! Az algoritmus 10-től 20-ig kiírja egymás alá a számokat:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    for(int i = 10; i <= 20; i++){
        System.out.println(i);
        }
    }
}
 

Végeredmény:

10

11

12

13

14

15

16

17

18

19

20

 

Természetesen lehetőségünk van csökkenő léptetésre is a -- operátor használatával:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    for(int i = 20; i >= 10; i--){
        System.out.println(i);
        }
    }
}
 

Végeredmény:

20

19

18

17

16

15

14

13

12

11

10

 

A léptető operátorok használatát bonyolítja az is, hogy az operátor prefix (++a) vagy postfix (a++) pozícióban van-e. Prefix pozíció esetén az értékváltás azonnal megtörténik…

 

int a = 10;

++a; //itt történik az értékváltás: 11

 

…postfix pozíció esetén viszont csak abban a pillanatban, amikor a változó felhasználásra kerül, például:

 

int a = 10;

a++; //itt NEM történik értékváltás

System.out.println(a); //itt történik az értékváltás: 11

 

Nézzünk a fentiek demonstrálására 2 futtatható kódot!

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    int b = 5;
    int c = a + b++;
    System.out.println(c);
    System.out.println(b);
    }
}
 

Végeredmény:

15

6

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    int b = 5;
    int c = a + ++b;
    System.out.println(c);
    System.out.println(b);
    }
}
 

Végeredmény:

16

6

 

Természetesen mindez működik csökkenő léptetés eseteiben is:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    int b = 5;
    int c = a + b--;
    System.out.println(c);
    System.out.println(b);
    }
}
 

Végeredmény:

15

4

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

public class Main {
    public static void main(String[] args) {
    int a = 10;
    int b = 5;
    int c = a + --b;
    System.out.println(c);
    System.out.println(b);
    }
}
 

Végeredmény:

14

4