I\'m writing a method that receives any number of arguments and returns them modified. I have tried with varargs but it doesn\'t work, here you can see a simplified version of t
Java is pass by value. You cannot achieve what you wish. Instead you can return the modified array from addPrefix() function.
public static void main(String args[]) {
String hello = "hello";
String world = "world";
String[] elements = addPrefix(hello, world);
for (int i = 0; i < elements.length; i++) {
System.out.println(elements[i]);
}
}
public static String[] addPrefix(String... elements) {
for (int i = 0; i < elements.length; i++) {
elements[i] = "prefix_" + elements[i];
}
for (int i = 0; i < elements.length; i++) {
System.out.println(elements[i]);
}
return elements;
}
and output
prefix_hello
prefix_world
prefix_hello
prefix_world