-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvarargs.txt
More file actions
60 lines (32 loc) · 1.67 KB
/
varargs.txt
File metadata and controls
60 lines (32 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Varargs fornecem uma abreviação para métodos que suportam um número arbitrário de parâmetros de um tipo
Antes do varargs, sempre que quiséssemos passar um número arbitrário de argumentos, tínhamos que passar todos os argumentos em um array ou implementar N métodos (um para cada parâmetro adicional):
public String format() { ... }
public String format(String value) { ... }
public String format(String val1, String val2) { ... }
Uso de Varargs:
Varargs nos ajuda a evitar escrever código clichê introduzindo a nova sintaxe que pode lidar com um número arbitrário de parâmetros automaticamente – usando um array sob o capô.
Podemos defini-los usando uma declaração de tipo padrão, seguida por reticências:
public String formatWithVarArgs(String... values) {
// ...
}
E agora podemos chamar nosso método com um número arbitrário de argumentos, como:
formatWithVarArgs();
formatWithVarArgs("a", "b", "c", "d");
Como mencionado anteriormente, varargs são arrays, então precisamos trabalhar com eles da mesma forma que trabalharíamos com um array normal.
acessando parametros:
public class Main
{
public static void teste(String... values){
for(String t : values){
System.out.println(t);
}
}
public static void main(String[] args) {
teste("r","3","324");
}
}
////////////////////
há algumas regras que devemos ter em mente:
- Cada método só pode ter um parâmetro varargs
- O argumento varargs deve ser o último parâmetro
Simplificando, o uso de varargs é seguro se os usarmos para transferir um número variável de argumentos do chamador para o método e nada mais!, não deve ser retornado esse array