Учебники по Java

Ява ГЛАВНАЯ Введение в Java Начало работы с Java Синтаксис Java Java-комментарии Java-переменные Типы данных Java Приведение типов Java Операторы Java Java-строки Java-математика Логические значения Java Java, если...иначе Java-переключатель Java-цикл во время выполнения Java для цикла Перерыв/продолжение Java Массивы Java

Java-методы

Java-методы Параметры метода Java Перегрузка метода Java Область применения Java Java-рекурсия

Java-классы

Java ООП Классы/объекты Java Атрибуты класса Java Методы класса Java Конструкторы Java Модификаторы Java Инкапсуляция Java Java-пакеты/API Наследование Java Java-полиморфизм Внутренние классы Java Java-абстракция Java-интерфейс Перечисления Java Пользовательский ввод Java Дата Java Список массивов Java Связанный список Java Java HashMap Набор хэшей для Java Java-итератор Классы-оболочки Java Исключения Java Java регулярное выражение Java-потоки Java-лямбда

Обработка файлов Java

Java-файлы Создание/запись файлов Java Файлы чтения Java Java Удалить файлы

Java Как

Добавить два числа

Справочник по Java

Ключевые слова Java Строковые методы Java Java математические методы

Примеры Java

Примеры Java Компилятор Java Java-упражнения Java-викторина Java-сертификат


Параметры метода Java


Параметры и аргументы

Информация может быть передана методам в качестве параметра. Параметры действуют как переменные внутри метода.

Параметры указываются после имени метода в круглых скобках. Вы можете добавить столько параметров, сколько хотите, просто разделите их запятой.

В следующем примере есть метод, который принимает Stringвызываемое имя fname в качестве параметра. При вызове метода мы передаем имя, которое используется внутри метода для вывода полного имени:

Пример

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

Когда параметр передается методу, он называется аргументом . Итак, из примера выше: fnameявляется параметром , в то время Liamкак Jennyи Anjaявляются аргументами .


Несколько параметров

Вы можете иметь столько параметров, сколько хотите:

Пример

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

Обратите внимание, что при работе с несколькими параметрами вызов метода должен иметь такое же количество аргументов, как и параметров, и аргументы должны передаваться в том же порядке.


Возвращаемые значения

Ключевое voidслово, используемое в приведенных выше примерах, указывает, что метод не должен возвращать значение. Если вы хотите, чтобы метод возвращал значение, вы можете использовать примитивный тип данных (например int, char, и т. д.) вместо voidи использовать return ключевое слово внутри метода:

Пример

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)

Этот пример возвращает сумму двух параметров метода :

Пример

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)

Вы также можете сохранить результат в переменной (рекомендуется, так как ее легче читать и поддерживать):

Пример

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)



Метод с If...Else

Обычно if...elseвнутри методов используются операторы:

Пример

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!"


Проверьте себя с помощью упражнений

Упражнение:

Добавьте fnameпараметр типа Stringв myMethodи выведите «John Doe»:

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

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