Що таке параметр "String args[]"? в основному методі Java

Я тільки починаю писати програми на Java. Що означає наступний код на Java?

public static void main(String[] args)
  • Що таке String[] args?

  • Коли можна використовувати ці аргументи?

Вихідний код та/або приклади мають перевагу над абстрактними поясненнями

В Java args містить передані аргументи командного рядка у вигляді масиву об'єктів String.

Іншими словами, якщо запустити програму як java MyProgram one two, то args буде містити ["один", "два"].

Якщо потрібно вивести вміст args, то можна просто перебрати їх в циклі таким чином

public class ArgumentExample {
    public static void main(String[] args) {
        for(int i = 0; i < args.length; i++) {
            System.out.println(args[i]);
        }
    }
}
Коментарі (7)

Рядок args містить аргументи командного рядка, що передаються Java-програмі при її виклику. Наприклад, якщо я викликаю програму так:

$ java MyProg -f file.txt

То args буде масивом, що містить рядки "-f" та "file.txt".

Коментарі (0)

String [] args також є способом оголошення масиву рядків в Java.

У цій сигнатурі методу масив args буде заповнений значеннями при виклику методу (як показують інші приклади тут). Оскільки ви вчитеся, варто розуміти, що цей масив args є таким самим, як якщо б ви створили його самостійно в методі, як у цьому прикладі:

public void foo() {
    String [] args = new String[2];
    args[0] = "hello";
    args[1] = "every";

    System.out.println("Output: " + args[0] + args[1]);

    // etc... the usage of 'args' here and in the main method is identical
}
Коментарі (0)