|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Приложение Java может принять любое число параметров от командной строки. Это позволяет пользователю определять конфигурационную информацию, когда приложение запускается.
Пользователь вводит параметры командной строки, вызывая приложение и определяет их после имени class, который будет выполнен. Например, предположите вызванное приложение Java Sort строки видов в файле. Сортировать данные в названном файле friends.txt, пользователь вошел бы:
java Sort friends.txt
Когда приложение запускается, система времени выполнения передает параметры командной строки к основному методу приложения через массив Strings. В предыдущем примере, параметры командной строки, которые передают к Sort приложение в массиве, который содержит сингл String: "friends.txt".
пример выводит на экран каждый из своих параметров командной строки на строке отдельно:Echo
public class Echo {
public static void main (String[] args) {
for (String s: args) {
System.out.println(s);
}
}
}
Следующий пример показывает, как пользователь мог бы работать Echo. Ввод данных пользователем курсивом.
java Echo Drink Hot Java Drink Hot Java
Отметьте, что приложение выводит на экран каждое слово — Drink, Hot, и Java — на строке отдельно. Это - то, потому что пробел разделяет параметры командной строки. Иметь Drink, Hot, и Java интерпретируемый как единственный параметр, пользователь присоединился бы к ним, включая их в пределах кавычек.
java Echo "Drink Hot Java" Drink Hot Java
Если приложение должно поддерживать числовой параметр командной строки, оно должно преобразовать a String параметр, который представляет число, такой как "34", к числовому значению. Вот фрагмент кода, который преобразовывает параметр командной строки в int:
int firstArg;
if (args.length > 0) {
try {
firstArg = Integer.parseInt(args[0]);
} catch (NumberFormatException e) {
System.err.println("Argument" + " must be an integer");
System.exit(1);
}
}
parseInt броски a NumberFormatException если формат args[0] не допустимо. Весь из Number классы — Integer, Float, Double, и так далее — имеют parseXXX методы, которые преобразовывают a String представление числа к объекту их типа.