Tuesday, 27 August 2013

How to add arguments to varargs?

How to add arguments to varargs?

Suppose I have methods
void m1(Object... objs) {
m2("added", objs);
}
and
void m2(Object... objs) {
for (Object o : objs) {
// do something with Object o
}
}
If I call m1("a", "b"), I'd like m2 to see an array of 3 Objects (Strings
"added", "a" and "b"). However, instead m2 sees an just 2 objects: String
"added" and an Object[] array, which internally contains Strings "a" and
"b".
How can I get the desired behavior, that is, I simply add elements to the
varargs before forwarding them to another method?

No comments:

Post a Comment