Java как запустить программу с параметром

статьи и идеи для разработчиков программного обеспечения и веб-разработчиков.

Аргументы командной строки в Java — доступ и сопоставление с типами данных

Введение Аргументы (параметры) командной строки — это строки текста, используемые для передачи дополнительной информации программе, когда приложение запускается через интерфейс командной строки [https://en.wikipedia.org/wiki/Command-line_interface] (CLI) операционная система. В этом руководстве мы получим доступ к аргументам (параметрам), переданным в основной метод приложения Java, и прочитаем их. Мы также сопоставим их с разными типами данных, чтобы мы могли обрабатывать их и изменять поток кода.

Время чтения: 3 мин.

Вступление

Аргументы (параметры) командной строки — это строки текста, используемые для передачи дополнительной информации программе, когда приложение запускается через интерфейс командной строки (CLI) операционной системы.

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

Читайте также:
Как сохранить справку о доходах бк на флешку с программы

Java для начинающих. Урок 17: Параметры метода.

Доступ к аргументам командной строки

Отправной точкой для каждой программы на Java является метод main() :

public static void main(String[] args) < // Do something >

Аргументы, переданные программе при ее инициализации, хранятся в массиве args В качестве альтернативы Java также поддерживает vararg в этом месте:

public static void main(String. args) < // Do something >

При этом мы можем легко получить доступ к каждому аргументу, переданному в этот метод. Начнем с их распечатки по очереди:

public class Main < public static void main(String[] args) < for (int i = 0; i < args.length; i++) System.out.println(String.format(«Argument %d: %s», i, args[i])); >>

Затем мы скомпилируем этот файл .java

javac Main.java

После этого мы можем запустить его:

java Main Hello World
Argument 0: Hello Argument 1: World

Сопоставление аргументов с типами данных

Сами аргументы представляют собой массив строк. Итак, на самом деле все, что мы передаем, — это String. Хотя мы также можем преобразовывать строки в разные типы данных:

java Main Hello 15 true
Argument 0: Hello Argument 1: 15 Argument 2: true

Скажем, мы хотели разрешить пользователям печатать строку заданное количество раз и иметь флаг, который переключает сообщение журнала, отображающее номер итерации. Таким образом, приведенные выше аргументы будут выводить Hello 15 раз с сообщением журнала для каждого оператора print()

Давайте сделаем это:

public class Main < public static void main(String[] args) < String s = «»; int n = 0; boolean flag = false; try < s = args[0]; >catch (Exception e) < System.out.println(«The first argument must be present.»); System.exit(1); >try < n = Integer.parseInt(args[1]); >catch (NumberFormatException e) < System.out.println(«The second argument must be an integer.»); System.exit(1); >try < flag = Boolean.parseBoolean(args[2]); >catch (Exception e) < System.out.println(«The third argument must be parseable to boolean.»); System.exit(1); >for (int i = 0; i < n; i++) < System.out.println(s); if (flag) System.out.println(String.format(«Iteration %d», i)); >> >

Читайте также:
Программа в Телеграмм для поиска номера телефона по номеру машины

Теперь давайте снова скомпилируем код:

Урок по Java 36: метод main и передаваемые в него параметры


javac Main.java

А затем запустим его без аргументов:

java Main
The first argument must be present.

Если мы приведем аргументы:

java Main Hello 5 true
Hello Iteration 0 Hello Iteration 1 Hello Iteration 2 Hello Iteration 3 Hello Iteration 4

Установка аргументов в IDE

Это предполагает, что вы запускаете код через командную строку, что не всегда так. Большинство людей используют IDE для работы над своими проектами, вместо этого у них есть удобная кнопка «Выполнить».

К счастью, вы можете указать IDE передать эти аргументы в вызов run. Вот примеры того, как это можно сделать с помощью некоторых популярных IDE:

Затмение

В разделе «Выполнить» -> «Выполнить конфигурации» :

IntelliJ

В разделе «Выполнить» -> «Изменить конфигурации» :

В этой статье мы рассмотрели, как мы можем получить доступ к аргументам командной строки, передаваемым в приложение Java при его запуске.

Затем мы сопоставили переданные аргументы с разными типами данных и обработали их соответствующим образом. Имея это в виду, легко создавать простые инструменты CLI и изменять поток кода на основе переданных аргументов.

Licensed under CC BY-NC-SA 4.0

Источник: rukovodstvo.net

Аргументы командной строки

На вход программы можно передавать значения, это делается с помощью аргументов командной строки. Допустим, нам необходимо запустить программу MySecondApp и передать на вход значения «значение1» и «значение2». Из командной строки пишем следующую строчку:

java com.company.lesson2.MySecondApp значение1 значение2

Как получить переданные значения в программе? Давайте более детально рассмотрим метод main :

public static void main(String[] args)

Этот метод принимает на вход в качестве параметра массив типа String : String[] args . Именно эта переменная и будет содержать в себе, переданные нами значения «значение1», «значение2».

Читайте также:
Программа человек и порядок

Метод main() в следующем примере использует цикл for для перебора элементов массива args и распечатывает значения аргументов командной строки. Что такое цикл for и массивы мы рассмотрим более подробно в следующих занятиях.

package com.company.lesson2; public class MySecondApp < public static void main(String[] args) < for (String str : args) < System.out.println(«аргумент language-markup»>java com.company.lesson2.MySecondApp значение1 значение2

Вывод на консоль:

аргумент = значение1 аргумент = значение2

Презентацию с видео можно скачать на Patreon .

Источник: www.examclouds.com

Pro Java

Посмотрим как с ней можно работать. Наш метод получает массив строк как аргумент из командной строки. Может пока не понятно что такое массив и даже аргументы командной строки, но постепенно мы все это рассмотрим.

И так немного модифицируем нашу программу:

public class HelloWorld public static void main ( String [] args )

System . out . println ( «Hello World!» ) ;

//выводим количество аргументов заданных в командной строке
System . out . println ( «Всего аргументов в командной строке: » + args . length ) ;

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

Запустим ее на исполнение из командной строки

H00001

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru