curso java #02 - variáveis, tipos e estruturas de controle
TRANSCRIPT
PROGRAMAÇÃO ORIENTADA APROGRAMAÇÃO ORIENTADA AOBJETOS -JAVAOBJETOS -JAVA
Prof. Renato Filho SENAC2014
VARIÁVEIS E TIPOS PRIMITIVOSVARIÁVEIS E TIPOS PRIMITIVOS
VARIÁVEISVARIÁVEISServem para armazenar valores que usaremos em nossoprograma.int idade = 28;boolean solteiro = true;char sexo = 'M';double salarioMinimo = 625.00;
String nome = "Fulano"; // não é variável, e sim um objeto.
COMO DECLARAR UMA VARIÁVELCOMO DECLARAR UMA VARIÁVEL
<tipo_da_variavel> <nome_da_variavel>;
<tipo_da_variavel> <nome_da_variavel> = <valor>;
PALAVRAS RESERVADASPALAVRAS RESERVADASabstract continues for new switch
assert default goto package synchronyzed
boolean do if private this
break double implements protected throw
byte else import public throws
case enum instanceof return transient
catch extends int short try
char final interface static void
class finally long strictfp volatile
const float native super while
NOMENCLATURANOMENCLATURA
Primeiro caracter: A-Z, a-z, _, &Demais caracteres: A-Z, a-z, _, &, 0-9Case sensitiveBoas práticas: CamelCase
TIPOS PRIMITIVOSTIPOS PRIMITIVOS
Tipos InteirosTipos Ponto flutuanteTipos BooleanTipos Char
TIPOS INTEIROSTIPOS INTEIROS
Nome Bytes Extensãobyte 1 -128 a 127
short 2 -32.768 a 32.767
int 3 2.147.483.648 a 2.147.483.647
long 4 -9223372036854775808 a9223372036854775807
TIPOS INTEIROSTIPOS INTEIROS
byte idadeDeUmaPessoa = 12; short numeroDeMunicipiosBrasileiros = 5.561; int populacaoDeTeresina= 767.559; long populacaoMuncial = 7.000.000.000;
TIPOS PONTO FLUTUANTETIPOS PONTO FLUTUANTE
Nome Quantidade de bitsfloat 32double 64
TIPOS PONTO FLUTUANTETIPOS PONTO FLUTUANTE
float precoDoPao = 2.50f; double precoDaCarne = 12.50;
TIPOS BOOLEANTIPOS BOOLEAN
Utilizada para armazenar valores lógicos. Recebem os valores literais true ou false ou o retornode operações relacionais.
boolean solteiro = true; boolean maiorDeIdade = (idade>18);
TIPOS CHARTIPOS CHAR
Recebe um caracter ou índice da tabela ASCII.
http://pt.wikipedia.org/wiki/ASCII
char letraA = 'a'; char pontoDeExclamacao = 33;
OPERADORES ARITIMÉTICOSOPERADORES ARITIMÉTICOSOperação Operador ExpressãoSoma + a+bSubtração - a-bMultiplicação * a*bDivisão interia / a/bResto da divisão % a%bIncremento += a+=5Decremento -= a-=5
E A RAIZ QUADRADA E POTÊNCIA?E A RAIZ QUADRADA E POTÊNCIA?
Não temos operadores padrões, mas temos a classe Math.
Math.pow(numero, potencia) ;e
Math.sqrt(numero);
OPERADORES DE AUTOOPERADORES DE AUTOINCREMENTOINCREMENTO
Pré-fixado
Incremente primeiro, atribua depois.++a; --a;
Pós-fixado
Atribua primeiro, incremente depois.a++; a--;
OPERADORES RELACIONAISOPERADORES RELACIONAISOperação Operador ExemploIgual == a==bDiferente != a!=bMaior que > a>bMenor que < a<bMaior ou igual a >= a>=bMenor ou igual a <= a<=b
OPERADORES LÓGICOSOPERADORES LÓGICOS&& (AND/E)
A expressão só é verdade quando tudo é verdade.
(5*4==20) && (3>2) // truetrue && (8/2!=4) // false(5%2>2)&&(9*2<=18) // false(2+2==5) && (4-3!=1) // false
OPERADORES LÓGICOOPERADORES LÓGICO|| (OU)
É verdade quando pelo menos uma das operações éverdade.
(5==10/2) || (4*4==16) // true (18==9*2) || (3!=4-1) // true (5>3*2) || ((2+2==5) && (4-3!=1)) // true (3*2>6) || (7*5==45) // false
COMPARANDO STRINGSCOMPARANDO STRINGS
class ComparaString { public static void main(String args[]){ String nome = "fulano" System.out.println(nome == "fulano"); }}
OPERADORES DE COMPARAÇÃOOPERADORES DE COMPARAÇÃO
String é um objeto de uma classe, não um tipo primitivo.
Jeito certo:
nome.equals("fulano")
ESTRUTURAS CONDICIONAIS EESTRUTURAS CONDICIONAIS ELAÇOS DE REPETIÇÃOLAÇOS DE REPETIÇÃO
ESTRUTURA CONDICIONAISESTRUTURA CONDICIONAIS
Estruturas para controlar o fluxo da execução do códigode acordo com uma condição.
ESTRUTURAS CONDICIONAISESTRUTURAS CONDICIONAISIf
int num = 4;
if (num%2==0){
System.out.println("Número par");
}
If...else int num = 4;
if (num%2==0){
System.out.println("Número par");
} else {
System.out.println("Número ímpar");
}
ESTRUTURAS CONDICIONAISESTRUTURAS CONDICIONAIS
switch...case: serve para fazer uma escolha entre váriasopções.
switch (diaDaSemana) {
case 1: System.out.println("Segunda-feira"); break;
case 2: System.out.println("Terça-feira"); break;
case 3: System.out.println("Quarta-feira"); break;
case 4: System.out.println("Quinta-feira"); break;
case 5: System.out.println("Sexta-feira"); break;
case 6: System.out.println("Sábado"); break;
case 7: System.out.println("Domingo"); break;
default: System.out.println("Dia da semana inválido");
}
ESTRUTURAS CONDICIONAISESTRUTURAS CONDICIONAIS
break: serve para sair do escopo do switch.default: rotina de execução padrão para a seleção, ou seja,se o valor não correspondeu a nenhuma das expressões.
Novidade do JDK7: Switch com Strings.
LAÇOS DE REPETIÇÃOLAÇOS DE REPETIÇÃO
Gerar rotinas para ser repetir a execução de um códigoum determinado número de vezes ou de acordo comuma condição.
FORFOR
Laço baseado em um índice numérico incremental for(int i=0;i<10;i++){ System.out.println(i); }
FORFOR
Loop infinito. for (int i=0;i<=10;i--){ System.out.println(i); }
WHILEWHILELaço baseado em uma condição.
int i = 1; while (i<=10) { System.out.println(i); i++; }
DO..WHILEDO..WHILESimilar ao while, mas sua estrutura garante que o laçoserá executado pelo menos uma vez.A condição é validada apenas no final da iteração no laço.
int i = 1; do { System.out.println(i); i++; } while(i<=10);
LAÇOS ENCADEADOSLAÇOS ENCADEADOS
É possível aninhar laços de repetição. class Tabuada { public static void main(String args[]) { for (int i=0; i<=10; i++) { for (int j=0; j<=10; j++) { int soma = i+j; System.out.println(i+"+"+j+"="+soma); } } } }
LET'S CODE!LET'S CODE!
1. Imprima todos os números de 150 a 300.
2. Imprima a soma de 1 até 1000.
3. Imprima todos os números pares entre 1 e 100.
4. Imprima todos os múltiplos de 3, entre 1 e 100.
5. Imprima todos os números primos entre 1 e 100.
DESAFIODESAFIOImprima os fatoriais de 1 a 10.
O fatorial de um número n é n * n-1 * n-2 ... até n = 1.Lembre-se de utilizar os parênteses.
O fatorial de 0 é 1O fatorial de 1 é (0!) * 1 = 1O fatorial de 2 é (1!) * 2 = 2O fatorial de 3 é (2!) * 3 = 6
O fatorial de 4 é (3!) * 4 = 24