Parametry metody Java


Parametry a argumenty

Informace lze předávat metodám jako parametr. Parametry uvnitř metody fungují jako proměnné.

Parametry jsou uvedeny za názvem metody v závorkách. Můžete přidat tolik parametrů, kolik chcete, stačí je oddělit čárkou.

Následující příklad obsahuje metodu, která jako parametr bere Stringvolané fname . Když je metoda volána, předáme křestní jméno, které se používá uvnitř metody k vytištění celého jména:

Příklad

public class Main {
  static void myMethod(String fname) {
    System.out.println(fname + " Refsnes");
  }

  public static void main(String[] args) {
    myMethod("Liam");
    myMethod("Jenny");
    myMethod("Anja");
  }
}
// Liam Refsnes
// Jenny Refsnes
// Anja Refsnes

Když je metodě předán parametr , nazývá se argument . Takže z výše uvedeného příkladu: fnameje parametr , while Liam, Jennya Anjajsou argumenty .


Více parametrů

Můžete mít tolik parametrů, kolik chcete:

Příklad

public class Main {
  static void myMethod(String fname, int age) {
    System.out.println(fname + " is " + age);
  }

  public static void main(String[] args) {
    myMethod("Liam", 5);
    myMethod("Jenny", 8);
    myMethod("Anja", 31);
  }
}

// Liam is 5
// Jenny is 8
// Anja is 31

Všimněte si, že když pracujete s více parametry, volání metody musí mít stejný počet argumentů, kolik je parametrů, a argumenty musí být předány ve stejném pořadí.


Návratové hodnoty

Klíčové voidslovo použité ve výše uvedených příkladech označuje, že metoda by neměla vracet hodnotu. Pokud chcete, aby metoda vracela hodnotu, můžete použít primitivní datový typ (například int, charatd.) namísto voida použít return klíčové slovo uvnitř metody:

Příklad

public class Main {
  static int myMethod(int x) {
    return 5 + x;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(3));
  }
}
// Outputs 8 (5 + 3)

Tento příklad vrátí součet dvou parametrů metody :

Příklad

public class Main {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(5, 3));
  }
}
// Outputs 8 (5 + 3)

Výsledek můžete také uložit do proměnné (doporučeno, protože se snáze čte a udržuje):

Příklad

public class Main {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    int z = myMethod(5, 3);
    System.out.println(z);
  }
}
// Outputs 8 (5 + 3)



Metoda s If...Else

Je běžné používat if...elsepříkazy uvnitř metod:

Příklad

public class Main {

  // Create a checkAge() method with an integer variable called age
  static void checkAge(int age) {

    // If age is less than 18, print "access denied"
    if (age < 18) {
      System.out.println("Access denied - You are not old enough!");

    // If age is greater than, or equal to, 18, print "access granted"
    } else {
      System.out.println("Access granted - You are old enough!");
    }

  }

  public static void main(String[] args) {
    checkAge(20); // Call the checkAge method and pass along an age of 20
  }
}

// Outputs "Access granted - You are old enough!"


Otestujte se pomocí cvičení

Cvičení:

Přidejte fnameparametr typu Stringdo myMethoda výstup "John Doe":

static void myMethod( ) {
  System.out.println( + " Doe");
}

public static void main(String[] args) {
  myMethod("John");
}