Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Programação com Java

Programação com Java

Slides usados em workshops de Java para iniciantes.

Ana Paula Mendes

November 01, 2019
Tweet

More Decks by Ana Paula Mendes

Other Decks in Programming

Transcript

  1. Hello world! public class Main { public static void main(String[]

    args) { System.out.println("Hello world!"); } }
  2. Sobre Java: • Criada em 1995; • Linguagem de programação

    orientada a objetos; • Propriedade da Oracle; • Usado para: ◦ Apps mobile; ◦ Apps desktop; ◦ Apps web; ◦ Servidores web; ◦ Jogos; ◦ etc.
  3. Sobre Java: • Linguagem interpretada; • Open source; • Tem

    uma comunidade muito grande que mantém a linguagem; • Largamente utilizada no mundo;
  4. Sintaxe: • Todo o código deve estar sempre dentro de

    uma classe; • Java é case-sensitive; • Nome de classes devem começar com letra maiúscula; • O nome do arquivo Java deve ser igual a classe principal do mesmo; • Todo programa deve ter um método main( ) para executá-lo; • O escopo é definido por { }; • Comentários: ◦ // codigo aqui : para uma linha; ◦ /* codigo aqui */ : para múltiplas linhas.
  5. Variáveis: • String: cadeia de caracteres (deve ser armazenado com

    aspas duplas); • int: números inteiros; • float: números decimais; • char: um único caracter (deve ser armazenado com aspas simples); • boolean: dois estados, verdadeiro ou falso (true ou false); • Podem ser declaradas sem assinar valor também. Declaração: tipo variável = valor;
  6. Tipos de Dados: • São divididos em dois grupos: ◦

    Primitivos: byte, short, int, long, float, double, boolean and charbyte, short, int, long, float, double, boolean e char; ▪ Um tipo de dados primitivo especifica o tamanho e o tipo de valores de variável e não possui métodos adicionais; ▪ São pré-definidos; ▪ Sempre tem um valor; ▪ Começa com letra minúscula. ◦ Não-primitivos: String, Arrays e Classes; ▪ Tipos de dados não primitivos são chamados tipos de referência porque se referem a objetos; ▪ Não são pré-definidos, exceto a String; ▪ Podem ser usados para chamar métodos para executar determinadas operações; ▪ Pode ser nulo; ▪ Começa com letra maiúscula.
  7. Conversão de Tipos (Casting): • A conversão de tipo é

    quando você atribui um valor de um tipo de dados primitivo a outro tipo. • Em Java, existem dois tipos de conversão: ◦ Widening Casting (automático): converte um tipo de tamanho menor para maior: ▪ byte -> short -> char -> int -> long -> float -> double ◦ Narrowing Casting (manualmente): converte um tipo de tamanho maior para menor: ▪ double -> float -> long -> int -> char -> short -> byte
  8. Strings • Tamanho de uma string: texto.length( ); • Tudo

    maiúsculo: texto.toUpperCase( ); • Tudo minúsculo: texto.toLowerCase( ); • Retornar o índice de uma substring: texto.indexOf("teste"); • Concatenação: nome + sobrenome; • Para usar aspas duplas dentro de string: \"teste\".
  9. Matemática: • Máximo: Math.max(x,y); • Mínimo: Math.min(x,y); • Raíz quadrada:

    Math.sqrt(x); • Valor absoluto positivo: Math.abs(-x); • Retornar um valor entre 0 (inclusivo) e 1 (exclusivo): Math.random( ).
  10. Booleanos: • a < b; • a <= b; •

    a > b; • a >= b; • a == b; • a != b; • a || b; • a && b;
  11. Observações antes de começar ➔ Valores booleanos ◆ true ◆

    false ➔ Expressão booleana ◆ true && true ◆ false || false ➔ Utiliza dos operadores lógicos e relacionais ➔ Precedência importa
  12. Condicionais Aninhados: if (EXPRESSÃO BOOLEANA) { COMANDOS_1; } else {

    if (EXPRESSÃO BOOLEANA) { COMANDOS_2; } else { COMANDOS_3; }
  13. Condicionais Encadeados: if (EXPRESSÃO BOOLEANA) { COMANDOS_1; } else if

    (EXPRESSÃO BOOLEANA) { COMANDOS_2; } else { COMANDOS_3; }
  14. Operador Ternário: • Funciona como a seleção binária: variável =

    (condição) ? expressãoVerdadeira : expressãoFalsa;
  15. Switch: switch(expressão) { case x: comandos; break; case y: comandos;

    break; default: comandos; } • Funciona como condicionais encadeados:
  16. Arrays Unidimensionais (Listas): ➔ Inicializando: ◆ String[ ] feira; ◆

    String[ ] feira = {"legumes", "frutas", "limpeza", "utensílios"}; ◆ int[] numerosPares = {2, 4, 6, 8, 10}; ➔ Acessando: ◆ System.out.println(feira[n]); ➔ Modificando: ◆ feira[2] = “higiene”; ➔ Tamanho: ◆ System.out.println(feira.length);
  17. Arrays Multidimensionais (Matrizes): ➔ Inicializando: ◆ Int[ ][ ] myNumbers

    = { {1, 2, 3, 4}, {5, 6, 7} }; ➔ Acessando: ◆ int x = myNumbers[1][2]; ◆ System.out.println(x); ➔ Modificando: ◆ myNumbers[1][2] = 10; ➔ Tamanho: ◆ System.out.println(myNumbers.length);
  18. Laço for for (int i = m; i < n;

    i++) { System.out.println(i); }
  19. Laço while int i = m; while (i < n)

    { System.out.println(i); i++; }