Използване на аргументи на командния ред в Java

click fraud protection

Аргументите на командния ред могат да бъдат начин за определяне на конфигурационните свойства на приложение и Java не е по-различен. Вместо да щракнете върху иконата на приложение от операционната система, можете да стартирате Ява приложение от прозорец на терминал. Наред с името на приложението могат да следват редица аргументи, които след това се предават на началната точка на приложението (т.е. основния метод, в случая на Java).

Например, NetBeans има редица параметри за стартиране, които могат да бъдат предадени на приложението, когато се стартира от терминален прозорец (напр.

указва версия на JDK, която да се използва вместо стандартната JDK, свързана с приложението NetBeans).

Основният метод

Нека да разгледаме основен метод за да видите къде се появяват аргументите, предадени на приложение:

Аргументите на командния ред могат да бъдат намерени в

Наречен

Например, нека разгледаме приложение, наречено

чието единствено действие е да разпечата аргументите на командния ред, предадени на него:

instagram viewer
публичен клас CommandLineArgs { 
 public static void main (String [] args) {
// проверете дали String масива е празен
ако (args.length == 0)
{
System.out.println ("Не бяха предадени аргументи на командния ред!");
}
 // За всеки String в масива String
// разпечатайте струната
за (Аргумент на низ: args)
{
System.out.println (аргумент);
}
}
}

Синтаксис на аргументите на командния ред

Java Runtime Engine (JRE) очаква аргументите да бъдат предадени след определен синтаксис, като така:

java ProgramName value1 value2

По-горе „java“ извиква JRE, което е последвано от името на програмата, която се обаждате. Те са последвани от всякакви аргументи към програмата. Няма ограничение за броя на аргументите, които една програма може да вземе, но редът е от решаващо значение. JRE предава аргументите в реда, в който те се появяват в командния ред. Например, помислете за този кодов фрагмент отгоре:

публичен клас CommandLineArgs2 {
 public static void main (String [] args) {
ако (args.length == 0)
{
System.out.println ("Не бяха предадени аргументи на командния ред!");
}

Когато се предават аргументи на Java програма, args [0] е първият елемент от масива (value1 по-горе), args [1] е вторият елемент (value2) и т.н. Кодът args.length () определя дължината на масива.

Преминаване на аргументите на командния ред

В NetBeans можем да предаваме аргументи от командния ред, без да се налага да изграждаме приложението и да го стартираме от терминален прозорец. За да зададете аргументите на командния ред:

  1. Щракнете с десния бутон върху папката на проекта в
    Проекти
    прозорец.
  2. Избери
    Имоти
    опция за отваряне
    Свойства на проекта
    прозорец.
  3. В
    Категории
    списък от дясната страна, изберете
    тичам
  4. В
    Аргументи
    текстово поле, което се показва, посочете аргументите на командния ред, които искате да предадете на приложението. Например, ако влезем
    Морков ябълков банан
    в
    Аргументи
    textbox и стартирайте
    CommandLineArgs
    програма, изброена по-горе, ще получим изхода:

Разбор на аргументите на командния ред

Обикновено аргументът на командния ред се предава с някаква информация за това какво да се прави със стойността, която се предава. Аргументът, информиращ приложението за какво е аргументът, обикновено има тире или две преди името му. Например, примерът на NetBeans за параметъра за стартиране, определящ пътя на JDK е

Това означава, че ще трябва да анализирате аргументите на командния ред, за да разберете какво да правите със стойностите. Има няколко рамки за команден ред на Java за анализ на аргументите на командния ред. Или можете да напишете обикновен анализатор на командния ред, ако аргументите, които трябва да предадете, не са толкова много:

Най- код по-горе или отпечатва аргументите, или ги добавя заедно, ако са цели числа. Например, този аргумент на командния ред ще добави числата:

java CommandLineArgs -ddnumbers 11 22 33 44
instagram story viewer