Anúncio
Anúncio

Mais conteúdo relacionado

Apresentações para você(20)

Anúncio

Mais de Manuel Menezes de Sequeira(19)

Anúncio

Último(20)

6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos de Programação

  1. Manipulação de caracteres Relação entre os tipos char e int Tipos de valor vs. tipos de referência
  2.  Atribuições especiais  Arrays em Java  Instruções de iteração:  while e do-while  for e foreach  Classes-pacote 2013/2014 Fundamentos de Programação 2
  3.  Cada variável char guarda um caractere  Valores literais entre plicas  Exemplo  char letter = 'k'; 2013/2014 Fundamentos de Programação 3 ‘k’ letter ‘k’ letter : char ou
  4.  Cada caractere tem código único  Códigos de letras latinas  Consecutivos  Ordem alfabética  Minúsculas e maiúsculas separadas Caractere Código … … A 65 … … Z 90 … … a 97 … … z 122 … … 2013/2014 Fundamentos de Programação 4 Sem marcas diacríticas!
  5.  Caracteres convertíveis para códigos  Códigos convertíveis para caracteres  Exemplo  char original = 'b';  int code = (int) original;  char recovered = (char) code; 2013/2014 Fundamentos de Programação 5 ‘b’ original 98 code ‘b’ recovered
  6. char letter1 = 'c'; letter1++; char letter2 = 'b'; letter2--; final int difference = letter1 - letter2; 2013/2014 Fundamentos de Programação 6 100 - 97 ‘c’ letter1 ‘b’ letter2 3 difference ‘d’ letter1 ‘a’ letter2
  7.  Comparam códigos!  Exemplos  c > 'a' – Caractere em c tem código superior ao de ‘a’  c1 <= c2 – Caractere em c1 tem código não superior ao caractere em c2 2013/2014 Fundamentos de Programação 7
  8. final int numberOfLetters = 'z' - 'a' + 1; // 26 final char[] letters = new char[numberOfLetters]; for(int i = 0; i != letters.length; i++) letters[i] = (char) ('a' + i); 2013/2014 Fundamentos de Programação 8
  9. 2013/2014 Fundamentos de Programação 9 Saiba mais naWikipédia. Cifra com deslocação de 2. a b c x y z… a b c d e z… a t a c a r c v c e c t cifra
  10. Variáveis que guardam referências. Tipos de valor (int, boolean, etc.) int a = 7; int b = a; int c; Tipos de referência (arrays, classes) int[] a = {1, 2, 3}; int[] b = a; int[] c; 2013/2014 Fundamentos de Programação 10 7 a 7 b 0 c Excepto no caso de variáveis locais. Variáveis locais têm sempre de ser inicializadas explicitamente. a b null c Excepto no caso de variáveis locais. Variáveis locais têm sempre de ser inicializadas explicitamente. 1 2 3 0 1 2 Variáveis que guardam valores. Valor especial significando «não referencia nada».
  11. public static void increment(int value) { value++; } … main(…) { int number = 3; increment(number); out.println(number); } 2013/2014 Fundamentos de Programação 11 Que aparece? Pois! Este procedimento está errado!
  12. public static void increment(int value) { value++; } … main(…) { int number = 3; increment(number); out.println(number); } 2013/2014 Fundamentos de Programação 12 value = number 3 number 3 value 4 value Aparece 3!
  13. public static void incrementFirstOf(final int[] values) { values[0]++; } … main(…) { final int[] numbers = {3, 2, 1, 0}; incrementFirstOf(numbers); out.println(numbers[0]); } 2013/2014 Fundamentos de Programação 13 Que aparece?
  14. public static void incrementFirstOf(final int[] values) { values[0]++; } … main(…) { int[] numbers = {3, 2, 1, 0}; incrementFirstOf(numbers); out.println(numbers[0]); } 2013/2014 Fundamentos de Programação 14 values = numbers numbers values Aparece 4! 2 1 0 0 1 2 3 43
  15.  Manipulação de caracteres  Relação entre os tipos char e int  Tipos de valor vs. tipos de referência 2013/2014 Fundamentos de Programação 15
  16.  Manipulação de caracteres  Relação entre os tipos char e int  Tipos de valor vs. tipos de referência 2013/2014 Fundamentos de Programação 16

Notas do Editor

  1. Divide et impera
Anúncio