programação "estruturada" com java
DESCRIPTION
Aula introdutória à plataforma Java, desde o que é o Java, JVM, tipos, variáveis, estruturas de controle, condicionais e vários exercícios práticos.TRANSCRIPT
Programação
Estruturada
com Java
10/09/2014
Direitos Autorais
Você está autorizado e incentivado a distribuir este material.
Copie, compartilhe e modifique, apenas cite a fonte.
Direitos Autorais
Luiz Ricardo
luizricardo.org
facebook.com/StateOfTheArtBlog
O que é Java?
• Java é uma linguagem de programação de alto nível
• Java é orientada a objetos
• Java é portável
• Java é robusto, seguro, distribuído e concorrente
• Java é uma plataforma de software
• Java é uma arquitetura
• Java é gratuito
Programação
Como o Java funciona
Código-Fonte BytecodeCompilador
Máquina Virtual
Bytecode
JVM
Sistema Operacional
Hardware
Versões do Java
• Java Runtime Environtment
• Java Development Kit
Exercício
public class Exercicio {
public static void main(String[] args) {
System.out.println(
"Meu primeiro programa em Java!");
}
}
Programação Estruturada
• Tipos de dados
• Variáveis
• Valores literais
• Palavras-reservadas
• Operadores
• Controle do fluxo
Programação Estruturada
• byte
• short
• int
• long
• float
Tipos de dados primitivos
• double
• char
• boolean
• String
Programação Estruturada
• Byte
• Short
• Integer
• Long
• Float
• Double
Wrappers
• Character
• Boolean
• BigDecimal
• Calendar
• Date
Programação Estruturada
• Pacotes refletem a estrutura de diretório
package br.com.empresa.projeto;
c:\projeto\br\com\empresa\projeto
Organização em Pacotes
Programação Estruturada
• Classes em outros pacotes
import java.math.BigDecimal;
import java.util.Date;
Importação de Tipos
Programação Estruturada
• Valores fixos no código
int 1
long 123L
float 3.14f
double 3.14d
String "Um texto qualquer"
Valores literais
Programação Estruturada
• Referência para um valor
int idade = 38;
float saldo = 1590.55f;
double saldo = 3.14159d;
char letra = 'a';
boolean valorVerdadeiro = true;
String nome = "C. S. Lewis";
String nome = outroNome;
Variáveis
Programação Estruturada
Variáveis e a Memória
Programação Estruturada
abstract continue for new
switch default goto package
boolean do if private
this break double implements
protected throw byte else
import public throws case
enum instanceof return catch
extends int short try
char final interface static
void class finally long
volatile float super while
Palavras Reservadas
Exercício 1
• Escreva um programa em Java que
declare e imprima variáveis com seu
nome, sexo, idade e altura.
• Utilize o tipo primitivo mais adequado em
cada variável para armazenar o valor.
Exercício 2
• Escreva um programa em Java que
declare e imprima variáveis com seu
nome, sexo, idade e altura.
• Utilize o tipo wrapper mais adequado em
cada variável para armazenar o valor.
Programação Estruturada
• Coleção de objetos do mesmo tipo
int[] numerosInteiros = {100, 200, 300};
char[] caracteres = new char[2];
char[0] = 'm';
char[1] = 'n';
Vetores
Exercício 3
• Escreva um programa em Java que
declare um vetor de Strings com 5
posições.
• Preencha as posições com nomes de
seus amigos.
• Imprima os nomes a partir do vetor.
Programação Estruturada
• Ausência de valor
int[] numerosInteiros = null;
Integer numero = null;
Valores Nulos
Programação Estruturada
int i = 1;
Operador de Atribuição
Programação Estruturada
int soma = 1 + 2;
String nome = "Pipoca" + "Doce";
Operadores Aritméticos
Programação Estruturada
boolean verdadeiro = true;
boolean falso = !verdadeiro;
Operador de Negação
Programação Estruturada
1 == 1
1 != 2
2 > 1
2 >= 1
1 < 2
1 <= 2
Operadores de Comparação
Programação Estruturada
boolean resultado = false || true;
boolean resultado = true && true;
Operadores Lógicos
Programação Estruturada
int media = (x + y) / 2;
Expressões
Programação Estruturada
System.out.println("Diga oi!");
Comandos
Programação Estruturada
{
comando1;
comando2;
comando3;
}
Blocos de Código
Exercício 4
• Escreva um programa em Java que
declare duas variáveis com notas de
provas.
• Calcule e imprima a média das notas.
Programação Estruturada
if (nota >= 7.5) {
System.out.println("Passou!");
}
Estruturas de controle
Programação Estruturada
if (nota >= 7.5) {
System.out.println("Passou!");
} else {
System.out.println("Não passou!");
}
Estruturas de controle
Programação Estruturada
if (nota >= 7.5) {
System.out.println("Passou!");
} else if (nota >= 5.0) {
System.out.println(“Recuperação!");
} else {
System.out.println("Não passou!");
}
Estruturas de controle
Programação Estruturada
switch (diaDaSemana) {
case 1: System.out.println("Segunda");
break;
case 2: System.out.println("Terça");
break;
case 3: System.out.println("Quarta");
break;
default: System.out.println("Ops!");
}
Estruturas de controle
Programação Estruturada
while (velocidade < 10) {
velocidade += 1;
}
Estruturas de controle
Programação Estruturada
do {
velocidade += 1;
} while (velocidade < 10);
Estruturas de controle
Programação Estruturada
for (int i = 1; i <= 10; i++) {
System.out.println("Contando: " + i);
}
Estruturas de controle
Programação Estruturada
String[] vetorPessoas =
{"João", "Maria", "José"};
for (String pessoa : vetorPessoas) {
System.out.println(pessoa);
}
Estruturas de controle
Programação Estruturada
while (true) {
if (!temSaldo) break;
pagarContas();
}
Estruturas de controle
Programação Estruturada
double pi() {
return 3.14159;
}
Estruturas de controle
Exercícios
5. Imprima os números de 11 a 17.
6. Imprima os números ímpares entre 0 e 100.
7. Imprima a letra 50 vezes “Z” usando
concatenação de texto.
8. imprima os números primos de 1 a 100.
Exercícios
9. Imprima alternadamente as letras “A” e “B”, 20
vezes cada uma.
10. Crie um vetor de double com 10 posições e
coloque números aleatórios em cada posição,
depois imprima os números. Dica: use o comando
Math.random().
Exercícios
11. Imprima todos os dias do mês atual usando a
classe Calendar.
12. Imprima todos os dias de semana do mês
atual, exibindo o nome por extenso de cada dia.
Exemplo: “1 - Segunda”, “2 - Terça” e assim por
diante.
Programação Estruturada
Tratamento de Erros
try {
int[] numeros = { 1, 2 };
System.out.println(numeros[2]);
} catch (ArrayIndexOutOfBoundsException e) {
e.printStackTrace();
}
Exercício 13
• Escreva um programa que gere uma divisão por
zero
• Capture a exceção e imprima a pilha do erro.
Não tenha medo...
Dúvidas?