Programação Java - Conceitos Básicos da Linguagem Java Marco Fagundes © 2007 Marco Fagundes - [email protected] 1 Tópicos Comandos Identificadores Variáveis Expressões e Operadores Estruturas de Controle (Decisão e Repetição) © 2007 Marco Fagundes - [email protected] 2 Comandos Os comandos são terminados por “;” Os identificadores são case sensitive e devem ser iniciados por uma letra, sublinhado ( _ ), ou um sinal de moeda do tipo ($ ou £) Java oferece para os tipos primitivos (byte, short, char, int, long, float, double) tipos compostos de dados, que são classes que empacotam os tipos primitivos O tipo String não é um tipo primitivo em Java, mas sim uma classe (por isso com letra maiúscula) © 2007 Marco Fagundes - [email protected] 3 Identificadores Convenções Primeira letra minúscula (ex: conta) Palavras compostas a segunda começa com letra maiúscula (ex: numeroConta) Constantes Todas as letras maiúsculas: MAX_VALOR © 2007 Marco Fagundes - [email protected] 4 Variáveis Sintaxe de declaração: <tipo_de_dado> <identificador>; Exemplos: int saldo; String nomeCliente; String nomeCliente=“Mary”, endereço, localTrabalho; Uma variável pode ser declarada em qualquer local no código © 2007 Marco Fagundes - [email protected] 5 Blocos de Código - Escopo de variáveis Variáveis definidas dentro de blocos de código têm seu tempo de vida limitado pelo bloco Exemplo int i = 0; if (i<10){ OK int a=0; System.out.println(a); }else System.out.println(i); Erro System.out.println(a); © 2007 Marco Fagundes - [email protected] 6 Expressões e Operadores Uma expressão é qualquer combinação válida de identificadores, palavras chave, símbolos e operadores Operadores Aritméticos + , Relacionais ==, Lógicos ! , Atribuição = , - , * , / , % , ++ , -!=, >, >=, <, <=, instanceof & , ^, | , && , || += , -= , *= , /= • Quando for necessário comparar duas Strings deve-se usar o método “equals” no lugar do operador “==“ © 2007 Marco Fagundes - [email protected] 7 Comentários Multilinha: de Linha: Javadoc: /* Início do comentário Final do comentário */ // Comentário de Linha. /** Programador Responsável: Data: Funcionalidade: */ © 2007 Marco Fagundes - [email protected] 8 Lab1 – Utilização de Variáveis 1. 2. 3. 4. Faça um programa que leia o nome, sexo (“M” ou “F”) e idade de uma pessoa. O nome e sexo são informações do tipo alfanuméricas, enquanto a idade deve ser do tipo numérico. Mostre para o usuário as informações coletadas. http://paginas.terra.com.br/informatica/marcofag undes © 2007 Marco Fagundes - [email protected] 9 Estruturas de Decisão Sintaxe: if(condição) <instrução>; else --->opcional <instrução>; Sintaxe: switch(variável) case (valor): ... © 2007 Marco Fagundes - [email protected] if (i == 5){ i ++; j = i; }else i=0; Instrução Composta ou em Bloco switch(i) { case 0: System.out.println(“zero”); break; case 1: System.out.println(“um”); break; default:System.out.println(“n”); } 10 Lab 2 – Estrutura de Condição “if” 1. Estenda o Lab1 para que: • • 2. No caso das mulheres seja solicitada o programa de TV preferido No caso dos homens seja solicitado o seu time de futebol Mostre para o usuário as informações coletadas. © 2007 Marco Fagundes - [email protected] 11 Lab3 – Estrutura de Condição “switch” 1. 2. Faça um programa que leia a idade e a opinião de um entrevistado sobre um filme, que deve ser um dos valores: 1-ótimo, 2-bom, 3-regular. De acordo com o conceito do usuário deve-se exibir as seguintes mensagens: 1. 2. 3. “O filme será repetido no dia seguinte” (no caso de conceito ótimo) “O filme será repetido na próxima semana” (no caso de conceito bom) “O filme somente será repetido no ano que vem” (no caso de conceito regular) © 2007 Marco Fagundes - [email protected] 12 Estruturas de Repetição •Sintaxe: while (condição) <instrução>; •Exemplo: int i=0, s=0; while (i<10) { System.out.println(i); s = s + i; //ou s+=i; i = i + 1; //ou i++; } System.out.println(i + s); © 2007 Marco Fagundes - [email protected] do <instrução>; while (condição) Instrução Composta ou em Bloco 13 Estruturas de Repetição •Sintaxe: for(inicialização; condição; incremento) <instrução>; • Todas as três partes são opcionais: for( for( for( for( initialization; ; ) ; expression; iteration ) ; ; iteration) ; ; ) // loop infinito •Exemplo: for(int i=0; i<3; i++) System.out.println(i); © 2007 Marco Fagundes - [email protected] 14 Break e Continue A instrução break ocasiona a saída imediata das estruturas while, for, do/while ou switch A instrução continue desconsidera as instruções restantes de um laço e prossegue com a próxima iteração int i = 0; int i = 0; while( i < 10 ){ while( i < 10 ){ if( i==5 ) { if( i == 5 ) i++; break; continue; System.out.println(i); } i++; System.out.println(i); } i++; System.out.println(i); }// end while © 2007 Marco Fagundes - [email protected] 15 Lab4 – Estrutura de Repetição 1. 2. Estenda o Lab2 um programa ler a idade de um conjunto de 5 pessoas. Deve-se exibir o seguinte: 1. 2. 3. 4. A maior e a menor idade do grupo; A média da idade das mulheres; O número de homens; O percentual de mulheres sobre o total de pessoas. © 2007 Marco Fagundes - [email protected] 16 Lab5 – Estrutura de Repetição 1. 2. Estenda o Lab3 para ler um conjunto indefinido de entrevistados. A condição de parada é quando a idade for igual a (–1). Após a coleta de dados o programa deve exibir: 1. 2. 3. A média das idades das pessoas que responderam ótimo A quantidade de pessoas que responderam regular A porcentagem de pessoas que responderam bom entre todos os espectadores entrevistados © 2007 Marco Fagundes - [email protected] 17 Leitura Recomendada Tutorial Sun: Learning the Java Language Lesson: Basic Language http://java.sun.com/docs/books/tutorial/java/nutsandbolts/in dex.html © 2007 Marco Fagundes - [email protected] 18