Asdfasf

Sunday, September 07, 2014

EJ-42 Use Varargs Judiciously

Ref: Effective Java by Joshua Bloch


A simple use of varargs:


static int sum(int... args) {
int sum = 0;
for (int arg : args)
sum += arg;
return sum;
}
view raw varargs1.java hosted with ❤ by GitHub



The WRONG way to use varargs to pass one or more arguments


static int min(int... args) {
if (args.length == 0)
throw new IllegalArgumentException("Too few arguments");
int min = args[0];
for (int i = 1; i < args.length; i++)
if (args[i] < min)
min = args[i];
return min;
}
view raw varargs2.java hosted with ❤ by GitHub



The right way to use varargs to pass one or more arguments


static int min(int firstArg, int... remainingArgs) {
int min = firstArg;
for (int arg : remainingArgs)
if (arg < min)
min = arg;
return min;
}
view raw varargs3.java hosted with ❤ by GitHub

No comments: