El tipo [String…] permite que un método (función) pase parámetros que pueden recibir dos tipos de parámetros, String y String[]
使用:
public class Main{
public static void main(String[] args) {
System.out.println(fun("111"));
String s[] = new String[2];
s[0]="2";
s[1]="3";
System.out.println(fun(s));
}
public static String fun(String... a){
String s="";
int indax = 0;
while(a.length>indax){
s+=a[indax];
indax++;
}
return s;
}
}
resultado de la operación:
111
23
Entonces, dado que puede haber String ... ¿qué pasa con otros tipos?
Aquí hay una prueba para [int...]
public class Main{
public static void main(String[] args) {
System.out.println(fun(1));
int s[] = new int[2];
s[0]=2;
s[1]=3;
System.out.println(fun(s));
}
public static String fun(int... a){
String s="";
int indax = 0;
while(a.length>indax){
s+=a[indax];
indax++;
}
return s;
}
}
运行结果:
1
23
Entonces es obvio aquí que hay un formulario [tipo de datos...] para que lo use para cada tipo. La función específica es que puede elegir pasar un solo dato o una matriz al pasar parámetros. Adelante.
¡Entonces! Dicho tipo de datos también debe admitir genéricos.
La siguiente es una prueba para genéricos
public class Main{
public static void main(String[] args) {
System.out.println(fun("111"));
int s[] = new int[2];
s[0]=2;
s[1]=3;
System.out.println(fun(s));
}
public static<E> String fun(E... a){
String s="";
int indax = 0;
while(a.length>indax){
s+=a[indax];
indax++;
}
return s;
}
}
运行结果:
111
[I@3af49f1c
Luego, cuando use la matriz, use solo referencias. presta atención a esto