Kezdőoldal » Számítástechnika » Programozás » (JAVA) Miért jó ha egy metódus...

(JAVA) Miért jó ha egy metódusnak van visszatérési értéke?

Figyelt kérdés
Miért nem jó mindent voiddal megoldani?
2017. nov. 15. 16:54
 1/10 anonim ***** válasza:
Mert mondjuk a függvénynek van valamilyen végeredménye, amivel kezdeni akarsz valamit? Sokra mész pl egy Add(int,int) metódussal, ha összeadja a két számot, aztán nem adja vissza az eredményt. :D
2017. nov. 15. 16:59
Hasznos számodra ez a válasz?
 2/10 anonim ***** válasza:
Mert nem csak parancsolni akarunk a gépnek, hanem kérdezni is akarunk tőle, amire válaszol.
2017. nov. 15. 17:07
Hasznos számodra ez a válasz?
 3/10 anonim ***** válasza:
Mert sokszor a methodokkal valamilyen műveletet elakarunk végezni és annak az eredményét a methodon kívül eltárolni...
2017. nov. 15. 17:19
Hasznos számodra ez a válasz?
 4/10 anonim ***** válasza:
0%
Há' mer' különben?
2017. nov. 15. 17:59
Hasznos számodra ez a válasz?
 5/10 anonim ***** válasza:
Lol 22%? :) Biztos sokat trollkodhattál....
2017. nov. 15. 18:08
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:
Nem is olyan jó :(
2017. nov. 15. 20:49
Hasznos számodra ez a válasz?
 7/10 anonim ***** válasza:

Például ez a metódus:

boolean isPrime(int number)


Erről egyből látszik, hogy mit csinál, eldönti, hogy a szám prím-e és visszaadja, hogy true vagy false.



De azt is lehet, hogy felveszel egy példányváltozót, és az isPrime függvény abba írja bele az utolsó számolás eredményét.

void isPrime(int number)

Vagy átadhatsz egy objektumot az isPrime-nek, hogy abba írja bele, hogy amit kapott prím-e.

void isPrime(int number, boolean ret)



Mindhárom megoldás működik.

De jelen esetben az a legnormálisabb, ha az isPrime visszaadja a megfelelő értéket.

A másik kettőről nem látszik egyből, hogy miért is úgy néz ki, ahogy.

2017. nov. 15. 21:11
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:
64%

"void isPrime(int number, boolean ret)"

A boolean primitív típus, azaz egy konkrét érték adódik át, nem egy referencia.


Ez csak így működik:

class Bool {

.. public boolean value; //Ezt hívják boxing-nak. Egy primitív típust egy osztályba burkolsz, hogy referenciaként adhasd át.

}


void isPrime(int number, Bool ret) {

.. if (ret != null)

.. .. ret.value = number % 2 == 0;

}


Bool result = new Bool();

isPrime(5, result);

System.out.println(result.value);


Nem kicsit túl van bonyolítva.

2017. nov. 15. 23:46
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:

"

"void isPrime(int number, boolean ret)"

A boolean primitív típus, azaz egy konkrét érték adódik át, nem egy referencia.

"


Igazad van, először Optinal<Boolean>-t írtam, de aztán egyszerűsíteni akartam :)

2017. nov. 16. 00:05
Hasznos számodra ez a válasz?
 10/10 anonim ***** válasza:
Csak az a gáz, hogy a Boolean osztály immutable, tehát hiába adod át más metódusnak, ő büdös életben annyi marad mint volt.
2017. nov. 16. 18:26
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!