Skip to content

Commit 666b876

Browse files
committed
Tutorials - Translation PT-BR - Named Parameters
1 parent 9cf0f80 commit 666b876

File tree

3 files changed

+45
-6
lines changed

3 files changed

+45
-6
lines changed

pt-br/tutorials/tour/default-parameter-values.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
layout: tutorial
3-
title: Valor Padrão de Parâmetro
3+
title: Parâmetro com Valor Padrão
44

55
disqus: true
66

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
layout: tutorial
3+
title: Parâmetros Nomeados
4+
5+
disqus: true
6+
7+
tutorial: scala-tour
8+
num: 33
9+
tutorial-previous: default-parameter-values
10+
language: pt-br
11+
---
12+
13+
Ao chamar métodos e funções, você pode utilizar explicitamente o nome das variáveis nas chamadas, por exemplo:
14+
15+
```tut
16+
def imprimeNome(nome:String, sobrenome:String) = {
17+
println(nome + " " + sobrenome)
18+
}
19+
20+
imprimeNome("John","Smith")
21+
// Imprime "John Smith"
22+
imprimeNome(nome = "John",sobrenome = "Smith")
23+
// Imprime "John Smith"
24+
imprimeNome(sobrenome = "Smith",nome = "John")
25+
// Imprime "John Smith"
26+
```
27+
28+
Perceba que a ordem não importa quando você utiliza parâmetros nomeados nas chamadas de métodos e funções, desde que todos os parâmetros sejam declarados. Essa funcionalidade pode ser combinada com [parâmetros com valor padrão](default-parameter-values.html):
29+
30+
```tut
31+
def imprimeNome(nome:String = "John", sobrenome:String = "Smith") = {
32+
println(nome + " " + sobrenome)
33+
}
34+
35+
imprimeNome(sobrenome = "Forbeck")
36+
// Imprime "John Forbeck"
37+
```
38+
39+
Dado que é permitido declarar os parâmetros em qualquer ordem, você pode utilizar o valor padrão para parâmetros que aparecem primeiro na lista de parâmetros da função.

pt-br/tutorials/tour/traits.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,18 @@ trait Similaridade {
2424
Tal trait consiste em dois métodos `eSemelhante` e `naoESemelhante`. Equanto `eSemelhante` não fornece um método com implementação concreta (que é semelhante ao abstract na linguagem Java), o método `naoESemelhante` define um implementação concreta. Consequentemente, classes que integram essa trait só precisam fornecer uma implementação concreta para o método `eSemelhante`. O comportamento para `naoESemelhante` é herdado diretamente da trait. Traits são tipicamente integradas a uma [classe](classes.html) (ou outras traits) utilizando a [composição mesclada de classes](mixin-class-composition.html):
2525

2626
```tut
27-
class Ponto(xc: Int, yc: Int) extends Similaridade {
27+
class Point(xc: Int, yc: Int) extends Similaridade {
2828
var x: Int = xc
2929
var y: Int = yc
3030
def eSemelhante(obj: Any) =
3131
obj.isInstanceOf[Point] &&
3232
obj.asInstanceOf[Point].x == x
3333
}
3434
object TraitsTest extends App {
35-
val p1 = new Ponto(2, 3)
36-
val p2 = new Ponto(2, 4)
37-
val p3 = new Ponto(3, 3)
38-
val p4 = new Ponto(2, 3)
35+
val p1 = new Point(2, 3)
36+
val p2 = new Point(2, 4)
37+
val p3 = new Point(3, 3)
38+
val p4 = new Point(2, 3)
3939
println(p1.eSemelhante(p2))
4040
println(p1.eSemelhante(p3))
4141
// Ponto.naoESemelhante foi definido na classe Similaridade

0 commit comments

Comments
 (0)