У меня есть метод, который принимает: с переменным числом аргументовКак проверить ARG в переменной длины
public static void main(String... args) throws Exception {
Я пытаюсь установить значение переменной на основе, если аргумент передается или нет. В этом случае я хочу знать, был ли передан 8-й аргумент, и если это так установлено значение переменной для значения этого аргумента, в противном случае используйте пустую строку. Я не могу жестко закодировать в args [8] в логической части истинного результата, потому что это приводит к ошибке компиляции, когда она выполняется только с 7 аргументами. Так что я попытался следующие, но это также ошибки из:
String titlePrefix = ((args.length!=8) ? "" : args[args.length]);
Что такое правильный способ проверить, если аргумент был принят в этом случае и использовать это значение, только если оно было принято? Я знаю, что приведенное выше даст мне проблемы, если этот метод будет превышать 8 аргументов, но пока давайте просто предположим, что он никогда не будет больше 8.
Спасибо заранее.
факт, что вы заботитесь о «8-м аргументе», подразумевает, что вы неправильно используете varargs. Если вашему методу нужно делать разные вещи на основе 7 или 8 аргументов, напишите два метода и назовите их параметры метода. –
Он всегда будет давать ошибку, если есть аргументы '8'. Это должно быть 'args [args.length - 1]'. –
Майк, спасибо. Я не знал, что могу перегрузить «главное». Я никогда не думал об этом раньше, поэтому я узнал что-то новое. Спасибо. – Trebor