Revisão Java Básico Programação em Java Prof. Maurício Braga.

55
Revisão Java Básico Revisão Java Básico Programação em Java Prof. Maurício Braga

Transcript of Revisão Java Básico Programação em Java Prof. Maurício Braga.

Page 1: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Revisão Java BásicoRevisão Java Básico

Programação em Java

Prof. Maurício Braga

Page 2: Revisão Java Básico Programação em Java Prof. Maurício Braga.

2/55

Introdução

Linguagem de programação desenvolvida pela Sun Microsystems, lançada em 1995.

Originalmente desenvolvida para ser utilizada em pequenos dispositivos, está presente em diversas plataformas computacionais, desde celulares e palmtops a computadores;

Devido as suas vantagens, é hoje largamente adotada pela indústria no desenvolvimento de software.

Page 3: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Plataformas Java

Standard Edition (JSE)Enterprise Edition (JEE)Micro Edition (JME)

Page 4: Revisão Java Básico Programação em Java Prof. Maurício Braga.

4/55

Java Standard Edition (JSE)

Plataforma para desenvolvimento de programas que serão utilizados em computadores desktop;

Entre as várias API’s disponíveis para auxiliar o desenvolvimento de aplicações, destacamos:

Swing; Collections; RMI; JDBC; Java 2D e 3D.

Page 5: Revisão Java Básico Programação em Java Prof. Maurício Braga.

5/55

Ambiente para desenvolvimento de aplicações Java;

Aplicações são executadas pela máquina virtual Java (JVM).

Java SDK

Page 6: Revisão Java Básico Programação em Java Prof. Maurício Braga.

6/55

Vantagens do padrão Java

Entre as vantagens da utilização do padrão Java, podemos destacar:

Orientada a Objetos; Segura; Portável; Multi-thread; Neutralidade de Arquitetura.

Page 7: Revisão Java Básico Programação em Java Prof. Maurício Braga.

7/55

Máquina Virtual Java (JVM)

Executa bytecodes que são independentes da plataforma onde o programa será executado;

Pode ser implementada em software ou hardware.

Provê definições para:

Conjunto de instruções; Conjunto de registradores; Pilha; Heap; Formato de arquivos .class.

Page 8: Revisão Java Básico Programação em Java Prof. Maurício Braga.

8/55

O kit de desenvolvimento Java

Contém pacotes com funções prontas para uso, tais como:

Entrada e Saída; Interface Gráfica; Comunicação em Rede; Threads.

Inclui as ferramentas:

Compilador – javac; Appletviewer; Interpretador – java; Gerador de Documentos – javadoc; Gerador de arquivos jar.

Page 9: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Exemplo Simples de Um Programa em Java

public class MeuPrograma

{

public static void main(String [ ] args)

{

System.out.println("Hello World!");

}

}

Page 10: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Criando um programa Java

Page 11: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Criando um programa Java

Page 12: Revisão Java Básico Programação em Java Prof. Maurício Braga.

12/55

Comentários

Em Java é possível comentar código de três formas diferentes:

// comentários de uma linha

/* comentários de várias linhas */

/** comentários para documentação */

Page 13: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Tipos de dados em Java

Java possui oito tipos primitivos de dados:

Lógico: boolean Texto (1 caractere): char Inteiros: byte, short, int e long Reais: double e float

Todos os tipos numéricos possuem sinal.

String: representa uma cadeia de caracteres.

Page 14: Revisão Java Básico Programação em Java Prof. Maurício Braga.

14/55

Identificadores

São nomes dados às variáveis, classes ou métodos.

Podem iniciar com uma letra Unicode, um cifrão ($) ou um underscore (_).

Diferenciam entre maiúsculas e minúsculas.

Exemplos:

meuNome nome_usuario _valor $contador @mail // ilegal

Page 15: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Declaração de variáveis

Sintaxe de uma variável em Java:

<tipo> <nome> [ = <valor inicial>];

Onde:

<tipo> = byte | short | int | long | char | float | double boolean

Exemplos:

int x;double calc = 45.76;String melhorTimeDePE = “Náutico”;

Page 16: Revisão Java Básico Programação em Java Prof. Maurício Braga.

16/55

Operadores em Java

Operadores aritméticos Consistem de:

Adição (+); Subtração (-); Multiplicação (*); Divisão real entre dois números (/); Divisão inteira entre dois números inteiros (/); Resto da divisão inteira entre dois números inteiros (%).

Page 17: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Operadores Lógicos em Java

Operadores Booleanos:! - Não & - E

| - Ou ^ - Ou Exclusivo

Operadores Booleanos com Curto-Circuito|| - Ou && - E

Page 18: Revisão Java Básico Programação em Java Prof. Maurício Braga.

18/55

Comando de entrada de dados

Normalmente precisamos de dados de entrada para serem processados pelo programa.

Desta forma, precisamos de um comando para solicitar e obter dados fornecidos pelo usuário.

Quando um computador encontra um comando de entrada de dados, ele suspende a execução do programa até que os dados sejam fornecidos.

A função Leia está disponível no site da disciplina, e deve ser adicionada ao código do programa.

variável = Leia (variável);

Page 19: Revisão Java Básico Programação em Java Prof. Maurício Braga.

19/55

Comando de saída de dados

Da mesma forma que precisamos receber dados externos, precisamos fornecer dados e instruções para os usuários.

Desta forma, precisamos de um comando para retornar dados e/ou mensagens em um dispositivo de saída.

Ex: System.out.println(“O saldo atual é” + saldo); System.out.println(soma);

System.out.println(var ou expressão ou mensagem);

Page 20: Revisão Java Básico Programação em Java Prof. Maurício Braga.

20/55

O método main()

A execução de uma aplicação Java se inicia através da função main();

A função main tem sempre a mesma declaração:

public static void main(String[] args)

Caso haja interesse em fazer uso do parâmetro args, o mesmo deve ser passado pela linha de comando como um conjunto de valores separados:

c:\>java Aplicacao nome1 valor1 “Uma String”

Page 21: Revisão Java Básico Programação em Java Prof. Maurício Braga.

21/55

Exemplo

Implementar em Java o programa que calcula a média de aluno que possui 2 notas.

Page 22: Revisão Java Básico Programação em Java Prof. Maurício Braga.

22/55

Programa média em Javapublic static void main(String[] args) {

// Variáveis: nota1, nota2 e média do aluno double nota1 = 0, nota2 = 0, media = 0;

System.out.println("Entre a primeira e a segunda nota do aluno:");

// entrada de dados nota1 = Leia(nota1); nota2 = Leia(nota2);

// cálculo da média media = (nota1 + nota2)/2;

System.out.println("A média é : "+media);}

Page 23: Revisão Java Básico Programação em Java Prof. Maurício Braga.

23/55

Estruturas de seleção

Para alterarmos o fluxo de execução de um programa escrito em Java, temos o comando if.

Para situações onde temos vários caminhos de execução que dependem da avaliação de uma variável inteira, temos o comando switch.

Page 24: Revisão Java Básico Programação em Java Prof. Maurício Braga.

24/55

Comando SE em Java

ifif (condição) // onde condição pode ser uma expressão (condição) // onde condição pode ser uma expressão

{{

Declarações ou blocos Declarações ou blocos

}}

elseelse // caso a condição anterior não seja satisfeita// caso a condição anterior não seja satisfeita

{ {

Declarações ou blocos Declarações ou blocos

}}

Page 25: Revisão Java Básico Programação em Java Prof. Maurício Braga.

25/55

Exemplo SE em Java

public static void main(String[] args) { // declaração das variáveis// declaração das variáveis int x = 0, y = 0;int x = 0, y = 0; // leitura dos dados// leitura dos dados x = Leia(x);x = Leia(x); y = Leia(y);y = Leia(y);

ifif (x >= y) {(x >= y) { System.out.println(“X é maior ou igual a Y.”); System.out.println(“X é maior ou igual a Y.”); }} else else { { System.out.println(“X é menor que Y.”);System.out.println(“X é menor que Y.”); }}}}

Page 26: Revisão Java Básico Programação em Java Prof. Maurício Braga.

26/55

Exercício

A prefeitura de Recife criou um programa de empréstimo para seus funcionários com desconto em folha. O valor da prestação não pode ultrapassar 30% do salário bruto do funcionário. Faça um programa que solicite o valor do salário bruto, o valor da prestação e informe se o empréstimo pode ou não ser concedido.

Page 27: Revisão Java Básico Programação em Java Prof. Maurício Braga.

27/55

Exercício

Faça um programa que solicite o valor do salário e calcule o IRRF a ser recolhido de acordo com a tabela abaixo:

Salário IR Parcela a deduzir

Até R$ 1372,00 isento 0

De R$ 1372,00 a 2743,00 15% R$ 205

Acima de R$ 2743,00 27,5% R$ 548

Page 28: Revisão Java Básico Programação em Java Prof. Maurício Braga.

28/55

Exercício

Uma companhia aérea define os preços de suas passagens a partir da informação do destino bem como do número de passagens (se é apenas ida ou se inclui também a volta). Faça um programa que solicite o destino bem como se o cliente deseja ida e volta e informe o preço de acordo com a tabela abaixo (PS: a empresa não trabalha nos trechos sul e sudeste):

Região Ida Ida e volta

Norte R$ 100 R$ 180

Nordeste R$ 205 R$ 375

Centro-oeste R$ 548 R$ 1007

Page 29: Revisão Java Básico Programação em Java Prof. Maurício Braga.

29/55

Exercício

Uma instituição bancária utiliza um dígito verificador para validar o número da conta (com 3 dígitos) de seus clientes. Faça um programa que solicite o número da conta e calcule o dígito verificador. Os passos para calcular o dígito verificador são:

Ex: Número da conta = 235. 1) somar o número da conta com o seu inverso. Ex: 235 + 532 = 767 2) Multiplicar cada digito do número obtido no passo anterior pela sua

ordem posicional e somar esses resultados. O último digito do número obtido é o dígito verificador.

Ex: 7 x 1 + 6 x 2 + 7 x 3 = 40 (dígito verificador 0).

PS: Use o operador % e a divisão inteira para obter o dígito verificador.

Page 30: Revisão Java Básico Programação em Java Prof. Maurício Braga.

30/55

Programa dígito em Javapublic static void main(String[] args) {

int conta = 0, inverso = 0,digito = 0, d1 = 0, d2 = 0, d3 = 0, soma = 0;System.out.println("Digite o número da conta (3 dígitos apenas):");conta = Leia(conta);d1 = conta / 100;d2 = (conta % 100) / 10;d3 = conta % 10;inverso = d3 * 100 + d2 * 10 + d1;soma = conta + inverso;d1 = (soma /100)*1;d2 = ((soma /10) % 10 )*2;d3 = (soma %10)*3;digito = (d1 + d2 + d3)% 10;System.out.println("digito verificador = "+ digito);

}

Page 31: Revisão Java Básico Programação em Java Prof. Maurício Braga.

31/55

Comando CASO

O comando caso é útil em situações onde há necessidade de se testar uma mesma variável (ou expressão) que possa conter diversos valores Cada valor exige a execução de comandos diferentes.

Uma expressão é comparada a diversos valores de acordo com a ordem definida.

Ao encontrar uma ocorrência do valor correto, o comando relativo é executado e o algoritmo segue para o fim do CASO.

Se nenhum dos valores for igual ao conteúdo da variável, poderá ser executado um outro comando através do complemento SENÃO.

Page 32: Revisão Java Básico Programação em Java Prof. Maurício Braga.

32/55

Comando CASO em Java

A sintaxe do switch é:

switch (expressão) { case constante1:

expressões; break; case constante2:

expressões; break; default: expressões; }

Page 33: Revisão Java Básico Programação em Java Prof. Maurício Braga.

33/55

Exemplo Caso em Javapublic static void main(String[] args) { // declaração de variáveis

int numero =0;System.out.println(“Digite um número:");numero = Leia(numero);

switch (numero) {case 0:

System.out.println(“Você digitou 0.");break;

case 1: System.out.println(“Você digitou 1.");break;

Page 34: Revisão Java Básico Programação em Java Prof. Maurício Braga.

34/55

Exemplo Caso em Java

case 2:

System.out.println(“Você digitou 2.");

break;

case 3:

System.out.println(“Você digitou 3.");

break;

default:

System.out.println(“Você digitou um valor maior do que 3 ou menor que 0.");

break;

}

}

Page 35: Revisão Java Básico Programação em Java Prof. Maurício Braga.

35/55

Estruturas de repetição

Diferente do ser humano, o computador não se cansa de realizar operações repetitivas.

Diante disto, podemos incluir nos algoritmos as estruturas de repetição.

O que é uma repetição? Também chamada a laço ou loop; É uma instrução que permite a execução de um trecho de

algoritmo várias vezes seguidas. Nesta aula veremos:

Repetição com teste no início (comando Enquanto); Repetição com teste no final (comando Repita); Repetição com variável de controle (comando Para).

Page 36: Revisão Java Básico Programação em Java Prof. Maurício Braga.

36/55

Comando REPITA em Java

O mais próximo do REPITA em java é a instrução do...while

Teste realizado após a execução do corpo do loop. O corpo do loop sempre executa ao menos uma vez. Diferente do repita, o código continuará sendo executado

enquanto a instrução for VERDADEIRA.

do {

instrução

} while ( condição );

Page 37: Revisão Java Básico Programação em Java Prof. Maurício Braga.

37/55

Exemplo comando do...while

int contador = 1; //declara e inicializa o contador

do {

// Imprime e incrementa o contador

System.out.println( “Contador = ” +contador);

contador = contador + 1;

} while (contador <= 10); // testa a condição de parada

Page 38: Revisão Java Básico Programação em Java Prof. Maurício Braga.

38/55

Comando Enquanto em Java

Implementado com a instrução while instrução que efetua o teste antes da execução

do corpo do loop. O corpo do loop pode nunca ser executado.

while ( condição ) {

instrução

}

Page 39: Revisão Java Básico Programação em Java Prof. Maurício Braga.

39/55

Exemplo comando While

int contador; // declara a variável de controle

contador = 1; // inicializa a variável de controle

while (contador <= 10) { // condição de parada do loop

// incrementa a variável de controle por 1 System.out.println( “Contador = ” + contador);

contador = contador +1;}

Page 40: Revisão Java Básico Programação em Java Prof. Maurício Braga.

40/55

Comando Para em Java

Instrução de repetição for foi criada para repetição utilizando variável contadora Especifica os detalhes da repetição controlada por

uma variável contadora em uma única linha

for ( int contador = 1; contador <= 10; contador++ ) {

System.out.println( “contador = ” + contador );

}

Inicialização da variávelCondição de parada Incremento após iteração

Page 41: Revisão Java Básico Programação em Java Prof. Maurício Braga.

41/55

Instrução de repetição for

Formato geralfor (inicialização; condiçãoDeParada; incremento) { instrução}

Inicialização Nomeia a variável de controle e inicializa seu valor.

Condição de parada Condição que determina se o loop deve parar.

Incremento Modifica o valor do contador para que a condição de parada torne-

se falsa ao final.

Page 42: Revisão Java Básico Programação em Java Prof. Maurício Braga.

42/55

Exercício

Faça um programa que leia 15 números e informe quantos números maiores do que 30 foram digitados.

Page 43: Revisão Java Básico Programação em Java Prof. Maurício Braga.

43/55

Exercício

Faça um programa que leia o número de termos de uma série (N) e imprima o valor de S, sendo:

NN

NNNS

2

1...

2

3

1

21

Page 44: Revisão Java Básico Programação em Java Prof. Maurício Braga.

44/55

Exercício

Faça um programa que leia um número inteiro e verifique se ele é um número triangular.

PS: Um número é triangular quando é o resultado do produto de 3 números consecutivos. Ex: 24 = 2 x 3 x 4.

Page 45: Revisão Java Básico Programação em Java Prof. Maurício Braga.

45/55

Programa triangular em Javapublic static void main(String[] args) {

int numero = 0, num = 1, produto = 0;System.out.println("Digite o número:");numero = Leia(numero);produto = num*(num+1)*(num+2);while (produto < numero) { num = num+1; produto = num*(num+1)*(num+2);}if (produto==numero) System.out.println(numero + " é triangular: " + num + "*"+(num+1)+"*"+(num+2)+"= "+numero+".");else System.out.println(numero + " não é triangular.");

}

Page 46: Revisão Java Básico Programação em Java Prof. Maurício Braga.

46/55

Vetores

Até agora sempre utilizamos variáveis definidas a partir de tipos básicos de dados. Cada variável só é capaz de armazenar um dado por vez.

Existem situações em que é necessário armazenar uma grande quantidade de dados na memória ao mesmo tempo. Esta quantidade torna inviável a criação de variáveis para cada um dos

dados a ser armazenado. Para estes casos, poderemos criar variáveis a partir de tipos de

dados estruturados. Um tipo de dado estruturado é aquele formado pela junção ou

combinação de tipos básicos, definindo apenas uma variável que o represente.

Page 47: Revisão Java Básico Programação em Java Prof. Maurício Braga.

47/55

Vetores

Vetor (ou array) é uma estrutura de dados composta por uma quantidade determinada de elementos de um mesmo tipo. Como armazena sempre dados do mesmo tipo, diz-

se que vetores são estruturas de dados homogêneas.

Page 48: Revisão Java Básico Programação em Java Prof. Maurício Braga.

48/55

Vetores em Java

Recebem o nome de Array.

Para criar um array, 3 passos são necessários: Declaração; Construção; Inicialização.

Page 49: Revisão Java Básico Programação em Java Prof. Maurício Braga.

49/55

Vetores em Java

A construção é feita com o operador new. int vetor[ ] = new int[10];

Os índices em um array em Java começam em 0.

Para inserirmos elementos, precisamos indicar a posição no array onde eles serão inseridos:

vetor[0] = 52; vetor[1] = -28;

Page 50: Revisão Java Básico Programação em Java Prof. Maurício Braga.

50/55

Vetores em Java

Não se especifica o tamanho do array na declaração: int vetor[ ]; // declaração do array

Isso deve ser feito apenas na construção: vetor = new int[10]; // construção do array

Page 51: Revisão Java Básico Programação em Java Prof. Maurício Braga.

51/55

Vetores

Observações É necessário validar acessos a índices inexistentes, evitando

erros no sistema; Apenas variáveis inteiras podem ser utilizadas como índices de

um vetor. Cada elemento do vetor deve ser tratado como uma variável

independente Todas as operações que podem ser realizadas sobre variáveis

de tipos básicos, podem ser aplicadas a posições de um vetor. Ex.: ler preco[10]; escrever preco[12];

Page 52: Revisão Java Básico Programação em Java Prof. Maurício Braga.

52/55

Vetores em Java

Não é possível acessar além dos limites em um array.

Para sabermos o tamanho de um array, podemos usar a variável length:

Ex:int v[ ] = new int[10];

for(int i = 0; i < v.length; i++) {

System.out.println("array[" +i + "] = " +v[i]);

}

Page 53: Revisão Java Básico Programação em Java Prof. Maurício Braga.

53/55

Exercício

Faça um programa que leia 10 nomes em um vetor e depois permita a consulta dos nomes armazenados a partir da posição do nome no vetor.

Page 54: Revisão Java Básico Programação em Java Prof. Maurício Braga.

54/55

Exercício

Faça um programa que leia 30 números inteiros em um vetor e depois imprima os números na ordem inversa a qual foram digitados.

Page 55: Revisão Java Básico Programação em Java Prof. Maurício Braga.

Revisão Java BásicoRevisão Java Básico

Programação em Java

Prof. Maurício Braga