13
Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Embed Size (px)

Citation preview

Page 1: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

1

Capítulo 2

Tipos de Dados

Page 2: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

2

Dados Numéricos• int : números inteiros

• double : double-precision floating-point, números reais• Declaração de variáveis:

– int n = 0;– double total = 0.5;

• Nota: Usar sempre nomes descritivos para as variáveis.

– double escudos = 0.0;Em vez de:

– double es = 0.0;

Page 3: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

3

Atribuição de valores a variáveis

• Nome_da_variável = expressão;• Na criação da variável:

double total = 50.0;double iva = 7.5;

total

iva7.550

total = total + iva;

7.557.5 total

iva

Page 4: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

4

Incrementar e Decrementar variáveis

• ano = ano + 1; • ano = ano – 1;

• Ou:– ano++;– ano––;

Page 5: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

5

Conversão de Tipos

• Os tipos de variáveis e os valores a elas atribuídos têm de coincidir :– double euros = “mil euros”; // erro

• Pode-se utilizar o (int) para converter inteiros em reais ou (double) para fazer o inverso– int total = (int)(euros * 0.5);

• Usar Math.round para fazer arredondamentos– int total = (int) Math.round(euros);

Page 6: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

6

Chamar métodos com parâmetros

• NomeDaClasse . nomeMétodo ( parâmetro )

• Exemplo :Math.round( 3.14 );

Page 7: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

7

• final tipo NOME_DA_CONSTANTE = expressão

Define uma constante e atribui-lhe um valor

Exemplo: final double VOLUME = 4.678;

• Constantes úteis já definidas: Math.PI, Math.E

Constantes

Page 8: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

8

Aritmética• Operadores:

– + - * /

• Divisão inteira– 9/4 é 2 e não 2.25– 9%4 é 1 (resto)

• Funções comuns:– Math.pow(x,y)– Math.sqrt(x)– Math.max(x,y)

• Matemática: 23 4

26+y 3x+1

• Java(2*3)/4

(2*6+y)/(3*x+1)

Page 9: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

9

“Strings”

• Ao contrário dos tipos numéricos a String é uma classe– String nome = “Carlos”;

• Quantidade de caracteres de uma String– int n = nome.length(); // 6

Page 10: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

10

“Substrings”• String capital = “Lisboa”;• String sub = capital.substring(2,5);• O resultado é “sbo”• O 2 corresponde à posição inicial e o 5 à

primeira posição que não interessa para a substring

L i s b o a

0 1 2 3 4 5

Page 11: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

11

“Concatenação”• String pnome = “Luís";String unome = “Silva";String nome = pnome + unome;

• O nome é “LuísSilva"

• Se um dos operandos da + é uma String, então o outro é convertido numa String:String a = “Agente00";String nome = a + 7;

• nome é "Agente007"

Page 12: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

12

Conversões entre Strings e números

• Converter para número:int n = Integer.parseInt(str);double x = Double.parseDouble(str);

• Converter para String:String str = "" + n;str = Integer.toString(n);

Page 13: Engenharia Informática Programação I & Estruturas de Dados e Algoritmos 2001/2002 1 Capítulo 2 Tipos de Dados

Engenharia InformáticaProgramação I & Estruturas de Dados e Algoritmos2001/2002

13

Classe EuroConverterpublic class EuroConverter

{

public final double ONEEURO = 200.482;

public double escudos(double euros)

{

return euros * ONEEURO;

}

public double euros(double escudos)

{

return escudos / ONEEURO;

}

}