Learn some properties Scala Language
Quiz yourself by thinking what should be in
each of the black spaces below before clicking
on it to display the answer.
Help!
|
|
||||
---|---|---|---|---|---|
Expressões Regulares | Usa-se pipeline (|) separa alternativas, por exemplo: psicadélico|psicodélico, pode casar "psicodélico" ou "psicadélico".
🗑
|
||||
Expressões Regulares | Agrupamento com parênteses ((,)):
psicodélico|psicadélico equivale a psic(a|o)délico.
🗑
|
||||
Expressões Regulares | Definição por Agrupamento: Define a quantidade de vezes que o elemento repete, por exemplo:
ab*c casa com: "ac", ou "abc", ou "abbc", ou "abbbbc".
🗑
|
||||
Expressões Regulares | Caracteres que podem ser usados em uma expressão de quantificação:
- Sinal de '+'.
- Sinal de '*'.
- Sinal de '?'.
🗑
|
||||
Expressões Regulares | Significado dos caracteres:
- '*': indica 0 ou mais precedências do elemento.
- '?': Indica 0 ou 1 ocorrência do elemento.
- '+': Indica 1 ou mais ocorrência do elemento.
🗑
|
||||
Casamento de Padrões | Semelhante ao Switch Case do Java, C#, C++, Javascript, mas em cima de expressões envolvendo os construtores de alguma estrutura de dados.
🗑
|
||||
Casamento de Padrões | Usa-se a palavra-chave 'match' seguindo a expressão que queremos usar.
🗑
|
||||
Casamento de Padrões | Usando o 'match':
def tamanho[T](lista::List[T]) : Int = lista match{ case Nil => 0
case h :: t => 1 + tamanho(T)}
🗑
|
||||
Casamento de Padrões | Operação de cabeça e cauda:
x :: t casa com uma lista não vazia e associa 'x' à cabeça e 't' à cauda.
🗑
|
||||
Casamento de Padrões | _ :: x :: _ casa com uma lista com pelo menos dois elementos, associando x ao segundo elemento.
🗑
|
||||
Casamento de Padrões | • List(x,2,y) casa com uma lista de três elementos se o segundo elemento for
igual a 2, e associa x ao primeiro elemento e y ao terceiro
🗑
|
||||
Case Classes | Exemplo de soma de 2 variáveis usando 'match':
{ case Number(n) => n case Sum(x, y) => x + y }
🗑
|
||||
Case Classes | Definição de uma classe completa, pode ser feita em uma só linha:
Case class Aluno(nome: String)
🗑
|
||||
Case Classes | O símbolo '_ (underline)' pode ser usado para substituir qualquer variável, é chamado 'coringa':
num1 match{ case Numero(1) => {...}
case Numero(2) => { ...}
case _ => {println("Não existe o número.")}
🗑
|
||||
Case Classes | Usando um padrão como lado esquerdo de um 'val':
val h :: t = List(1,2,3)
onde h é associado a 1, t a List(2,3).
🗑
|
||||
Case Classes | Uma expressão 'x' match
{
case p1 => x1 ... case pn => xn
}
primeiro avalia 'x' até obter um valor.
🗑
|
||||
Case Classes | Implementação de uma classe usando JAVA como intermédio:
class Aluno(val nome : String){
def getNome : String = nome
def == (a2 : Aluno) : Boolean = {
nome.equals(as.nome)
}
}
🗑
|
||||
Expressões Regulares | Classes de caracteres:
[:alnum:], [:alpha:], [:blank:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], [:xdigit:].
🗑
|
||||
Casamento de Padrões | Um padrão como 'List(p1, p2, ..., pn)', casa uma lista que pode ser construída com o construtor “List” e argumentos que casem com os padrões p1, p2, ..., pn.
🗑
|
||||
Casamento de Padrões | Construções podem ser combinadas arbitrariamente para formar expressões aritméticas com números e operações de adição, subtração, multiplicação e divisão.
🗑
|
Review the information in the table. When you are ready to quiz yourself you can hide individual columns or the entire table. Then you can click on the empty cells to reveal the answer. Try to recall what will be displayed before clicking the empty cell.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
Embed Code - If you would like this activity on your web page, copy the script below and paste it into your web page.
Normal Size Small Size show me how
Normal Size Small Size show me how
Created by:
tiago.higino
Popular Math sets