Próbuję wykryć, czy "a" zostało wprowadzone jako pierwszy argument ciągu.Argumenty wiersza poleceń Java
Odpowiedz
public class YourClass {
public static void main(String[] args) {
if (args.length > 0 && args[0].equals("a")){
//...
}
}
}
Twoja metoda main
ma argument . Zawierają argumenty, które zostały przekazane do twoich aplikacji (często nazywa się to args
, ale nie jest to wymagane).
argumenty poleceń linii przechodzą w pierwszym String[]
parametru main()
, np
public static void main(String[] args) {
}
W powyższym przykładzie args
zawiera wszystkie argumenty polecenia linii.
Krótki, słodkie odpowiedź na postawione pytanie brzmi: Argumenty wiersza
public static void main(String[] args) {
if(args.length > 0 && args[0].equals("a")) {
// first argument is "a"
} else {
// oh noes!?
}
}
poleceń są dostępne za pośrednictwem String[] args
parametru main
metody.
Do pierwszego argumentu można sprawdzić args[0]
cały kod będzie wyglądać
public static void main(String[] args) {
if ("a".equals(args[0])) {
// do something
}
}
Program
Każdy Java zaczyna
public static void main(String[] args) {
tej tablicy typu String
że main()
przyjmuje jako parametr przechowuje argumenty wiersza poleceń do twojego programu. Jeżeli użytkownik uruchomi program jako
$ java myProgram a
następnie args[0]
będzie utrzymać ciąg „A”.
Jak wszyscy inni mówili ... metoda .equals jest tym, czego potrzebujesz.
w off szansa stosować coś takiego:
if(argv[0] == "a")
to nie działa, ponieważ == porównuje lokalizację dwóch obiektów (równość fizyczna), a nie treści (logiczne równości).
Ponieważ "a" z wiersza poleceń i "a" w źródle dla twojego programu są przydzielane w dwóch różnych miejscach, nie można użyć ==. Musisz użyć metody równości, która sprawdzi, czy oba łańcuchy mają te same znaki.
Inna uwaga ... "a" == "a" będzie działać w wielu przypadkach, ponieważ ciągi znaków są specjalne w Javie, ale 99,99999999999999% czasu, którego chcesz użyć .equals.
Skorzystaj z apache commons cli, jeśli zamierzasz przedłużyć poprzedni pojedynczy argument.
"Biblioteka Apache Commons CLI udostępnia interfejs API do analizowania opcji wiersza poleceń przekazywanych do programów, a także umożliwia drukowanie komunikatów pomocy z opcjami dostępnymi dla narzędzia wiersza poleceń."
Commons CLI obsługuje różne rodzaje opcji:
- POSIX jak opcji (tj. Smoła zxvf foo.tar.gz)
- GNU jak długie opcji (tj du --human-czytelny. --max-depth = 1)
- Java jak właściwości (np. Java -Djava.awt.headless = true -Djava.net.useSystemProxies = true foo)
- krótkich opcji o wartości dołączone (tj. gcc -O2 foo.c)
- długie opcje z pojedynczym łącznikiem (np. ant -projec thelp)
próby przekazania wartości A i porównać stosując metodę equals tak:
public static void main(String str[]) {
boolean b = str[0].equals("a");
System.out.println(b);
}
ten link, aby dowiedzieć się więcej o Command line argument in Java
To nie jest 'null'-safe ... – Samoth
argumenty wiersza polecenia są przechowywane jako ciągi w String
array String[] args that is passed to
main() `.
java [program name] [arg1,arg2 ,..]
Argumenty wiersza polecenia są wejściami przyjmowanymi z wiersza polecenia podczas uruchamiania programu. Argumenty przekazane mogą być dowolne. Który jest przechowywany w tablicy args[]
.
//Display all command line information
class ArgDemo{
public static void main(String args[]){
System.out.println("there are "+args.length+"command-line arguments.");
for(int i=0;i<args.length;i++)
System.out.println("args["+i+"]:"+args[i]);
}
}
Przykład:
java Argdemo one two
Wyjście będzie [? Jak przetwarzać argumenty wiersza polecenia w języku Java]
there are 2 command line arguments:
they are:
arg[0]:one
arg[1]:two
W twoim przykładzie, co oznacza pierwszy wiersz' javastack.java' ? Nie wiem na pewno, co to "w" Używa się do przyjmowania danych wejściowych z wiersza poleceń podczas uruchamiania programu. "Odnosi się do, ale sekwencja to 1) komenda parse 2) parametry instalacji 3) uruchom program. Nie wiem na pewno, co to jest "To" w "To zasadniczo przyspiesza wykonywanie programu, gdy program zależy od danych wprowadzanych przez użytkownika." Odnosi się do, ale nie ma nic w _parametrze przekazującym _ do zwiększenia wydajności programu. – greybeard
- 1. Eclipse & cytuje argumenty wiersza poleceń?
- 2. args.length i wiersza poleceń argumenty
- 3. Argumenty QtCreator i wiersza poleceń
- 4. Argumenty wiersza poleceń w pythonie.
- 5. argumenty wiersza poleceń, czytania pliku
- 6. Argumenty wiersza poleceń Java. Używanie * jako argumentu dla mnożenia
- 7. Jak przetwarzać argumenty wiersza poleceń w java Swing Application Framework
- 8. Argumenty wiersza poleceń w C++ Eclipse CDT?
- 9. argumenty wiersza poleceń wstrzyknąć do psake
- 10. Argumenty wiersza poleceń w aplikacji C#
- 11. NodeJS przekazuje argumenty wiersza poleceń do wieczności
- 12. Jak przekazywać argumenty wiersza poleceń w kernernetes?
- 13. Drukować argumenty wiersza poleceń z argparse?
- 14. Argumenty wiersza poleceń w programie F #?
- 15. Argumenty wiersza poleceń w języku Python (Windows)
- 16. zaczynarki - argumenty wiersza polecenia
- 17. Co to są argumenty wiersza poleceń dla sbt?
- 18. Jak mogę uzyskać niezmodyfikowane argumenty wiersza poleceń, aby "zawinąć" inne narzędzie wiersza poleceń?
- 19. Argumenty wiersza poleceń gem/git-style w pythniku
- 20. Jak przechwytywać argumenty wiersza poleceń w aplikacji WPF?
- 21. Jak wykrywać argumenty wiersza poleceń vim w vimscript?
- 22. Jak utworzyć zadanie, które drukuje argumenty wiersza poleceń?
- 23. W którym argumenty wiersza poleceń segmentu pamięci są przechowywane?
- 24. Jak zdobyć argumenty wiersza poleceń o nieznanej długości w Fortranie?
- 25. Jak przekazywać argumenty wiersza poleceń do stosu exec
- 26. Python argumenty wiersza poleceń w głównym, należy pominąć nazwę skryptu
- 27. Jak otwierać pliki podane jako argumenty wiersza poleceń w pythonie?
- 28. Python, test jednostkowy - Przekaż argumenty wiersza poleceń do setUp unittest.TestCase
- 29. rurowe, standardowe wejście i wiersza poleceń argumenty Bash
- 30. IDE Netbeans dla C++ jak określić argumenty wiersza poleceń
Możliwy duplikat (http://stackoverflow.com/ pytania/367706/how-to-parse-command-line-arguments-in-java) – xenteros