A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN 013149020 © 2005.

Apresentações semelhantes


Apresentação em tema: "Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN 013149020 © 2005."— Transcrição da apresentação:

1 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Tipos primitivos, Strings, e Console I/O Capítulo 2

2 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Objectivos Conhecer os tipos primitivos do Java (números, caracteres, etc.). Perceber a instrução de afectação e expressões. Saber ler dados introduzidos através do teclado (keyboard) e escrever resultados no ecrã (screen). Familiarização com os conceitos de classe, método e objecto. Conhecer as diferenças entre variáveis de tipos primitivos e tipos classe (referência). Saber usar os tipos classe String, Scanner e Math

3 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Conceitos básicos Variáveis e valores Identificadores Java Tipos Primitivos Expressões Literais Instrução de afectação Conversão de tipos implícita e explícita (type casting) Escrita no ecrã – output Tipos classe – String,Scanner e Math Leitura dos valores inseridos através do teclado – input Constantes com nome

4 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Variáveis e Valores Variáveis armazenam dados. –Têm que ser declaradas antes de serem usadas. –Quando se declara uma variável, tem que se dar um nome e o tipo de dados que a variável vai armazenar. Os dados armazenados pelas variáveis são denominados valores O valor contido pode ser alterado através da operação de afectação.

5 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Identificadores Um identificador é um nome, duma variável, dum tipo, ou dum método. Identificadores só podem conter –letras –dígitos (0 a 9) –carácter underscore ( _ ) –e o símbolo do dólar ($) em ocasiões especiais. mas o primeiro não pode ser dígito. O Java é case sensitive, nome, Nome, e NOME são identificadores diferentes. Palavras chave (keywords) são palavras reservadas, que não podem ser usadas como identificadores. Identificadores podem ser arbitrariamente grandes.

6 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Tipos em Java Tipo primitivo é usado em valores simples que não permitem decomposição, tais como um número ou um carácter. –1, 1.0, e 'a' são valores de tipo primitivo, int, double, e char respectivamente. Tipo classe (ou referência) é usado em objectos que contêm dados e sobre os quais se pode executar acções (métodos). –"Pensa antes de falares." - é um valor do tipo classe String

7 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Tipos primitivos Quatro tipos inteiro ( byte, short, int, e long ) –int é o mais comum Dois tipos em vírgula flutuante ( float e double ) –double é o mais comum O tipo carácter ( char ) O tipo boolean ( boolean )

8 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Tipos primitivos

9 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Formato de floating-points IEEE-754 SinalExpoenteFracção float (Precisão simples)1 [31]8 [30-23]23 [22-00] double (Precisão dupla)1 [63]11 [62-52]52 [51-00] [sinal] 1.[fracção] * 10 [expoente]

10 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Literais ou constantes Expressões como 2, 3.7, ou 'y' são denominadas literais ou constantes. Literais de caracteres encontram-se delimitados pelos carácter plica ('). Literais em vírgula flutuante (floating-point) podem ser escritos: –com dígitos depois do ponto decimal ou –usando notação cientifica (E notation). –Exemplo: pode ser escrito 8.65e pode ser escrito 4.83e-4

11 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Exemplo de valores primitivos Inteiros // literais de tipo int Número em virgula flutuante (floating-point) // literais de tipo double 23.45f 2.45e23f // literais de tipo float Carácter ' a ' ' A ' ' # ' ' // literais de tipo char Boolean true false // literais de tipo boolean

12 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Unicode Muitas linguagens de programação usam o código de caracteres ASCII. Java usa o código de caracteres Unicode que inclui o conjunto de caracteres ASCII. O Unicode inclui os códigos para diferentes alfabetos.

13 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Declaração e iniciação de variáveis Sintaxe : Declaração_de_variável ::= [ = ] {, [ = ] } * ; Exemplos : int contador = 0; char letra = 'A', sinal = ','; Uma variável declarada, mas que não foi atribuído valor diz-se que não está iniciada (uninitialized). Variáveis do tipo classe devem ser iniciadas com o valor null.

14 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Expressões Com variáveis e operadores, constroem-se expressões às quais fica associado um valor. Uma expressão pode ser uma variável um literal, ou uma combinação de variáveis e literais usando operadores. Numa expressão, o tipo dos operandos determina como deve ser interpretada e executada a operação.

15 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Expressões simples

16 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Instrução de afectação Uma instrução de afectação é usada para atribuir um valor a uma variável. temperatura = 36; O sinal de igual é denominado o operador afectação. Diz-se: A variável de nome temperatura é afectada com o valor 36, ou de uma forma abreviada: temperatura é afectada com 36.

17 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Instrução de afectação Sintaxe Instrução_de_afectação ::= = ; A expressão que se encontra do lado direito do operador afectação é avaliada primeiro. O resultado da expressão é usado para ficar como valor da variável que se encontra do lado esquerdo do operador afectação. score = numeroDeCartas + desvantagem; contador = contador - 2; letra = 'a'; euros = 6;

18 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Output System.out.println("Olá"); escreve no ecrã a string literal Olá System.out.println("O contador é " + contador); escreve no ecrã a string literal " O contador é " seguido do valor corrente da variável contador. System.out.println(euros + " euros"); escreve no ecrã o valor corrente da variável euros seguido da string literal " euros ".

19 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Input Leitura de dados inseridos através do teclado requer que: import java.util.*; seja colocado no início do ficheiro. Os dados são lidos usando: Scanner keyboard = new Scanner(System.in); seguido, por exemplo, de: euros = keyboard.nextInt(); que lê um valor do tipo int e afecta a variável euros.

20 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Conversões O Java diz-se uma linguagem fortemente tipificada (strongly typed). –Não se pode, por exemplo, afectar uma variável declarada como inteiro com um valor numérico em vírgula flutuante. Embora algumas conversões entre números sejam possíveis, como por exemplo : double variavel = 7;

21 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Conversão implícita Valores de um tipo podem ser convertidos quando necessário em valores doutro tipo na seguinte direcção: byte --> short --> int --> long --> float --> double ou char --> int Exemplo: double media; int notaTeste, notaTrab; … media = notaTeste * notaTrab * 0.5; int codigo; char ponto= A; … codigo = ponto; // codigo contem o código // Unicode do caracter ponto (65)

22 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Conversão explícita Uma conversão explícita (type casting) converte um valor de um tipo para outro. Exemplo: double distancia;... int ponto = (int)distancia; int codigo;... char caracter = (char)codigo;

23 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operadores Operadores aritméticos (binários: +, -, *, / e % e unários: +, - ) Associatividade e regras de precedência Operadores incremento e decremento.

24 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operações Aritméticas Nas expressões aritméticas as operações são binárias, isto é, têm dois operandos e um operador (+, -,*, /). –Quando os dois operandos são do mesmo tipo, o resultado é desse tipo. –Quando um dos operandos é um tipo em virgula flutuante e o outro um inteiro, o resultado é do tipo virgula flutuante. Expressões com mais do que um operador são executadas numa sucessão de passos, em que cada passo envolve uma operação com dois operando. –O resultado de um passo produz o operando para o passo seguinte.

25 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Imprecisão dos números em virgula flutuante Os números em virgula flutuante frequentemente são aproximados pois são armazenados com um número finito de bits. Por isso 1.0/3.0 é um pouco menor que 1/3. 1.0/ / /3.0 é menor do que 1.

26 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operador Divisão O operador divisão ( / ) comporta-se como se espera se um dos operandos é um número em virgula flutuante. Quando os dois operandos são números inteiros, o resultado é a divisão inteira, isto é, o valor é truncado e não arredondado. – Assim, 99/100 tem o valor 0.

27 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operador resto O operador resto ( % ) é usado com operandos inteiros e obtém-se o resto da divisão inteira. 14 a dividir por 4 é 3 com resto 2. –Assim, 14 % 4 é igual a 2. O operador resto tem muitos usos, tal como: –Determinar se um número inteiro é par ou impar –Determinar se um número inteiro é divisível por outro número inteiro.

28 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Parênteses e Precedência Os parênteses comunicam a ordem pela qual as operações aritméticas devem ser executadas Sem parênteses, as expressões são avaliadas de acordo com as regras de precedência. Exemplos: (custo + taxa) * desconto custo + (taxa * desconto) Mesmo quando os parênteses não são necessários, podem ser usados para tornar a expressão mais clara. saldo + (taxa * saldo) Os espaços podem tornar o código mais legível saldo + taxa*saldo mas os espaços não ditam a precedência.

29 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Regras de Precedência Precedência mais alta 1º: Operadores unários: +, -, ++, --, e ! 2º: Operadores aritméticos binários: *, /, e % 3º: Operadores aritméticos binários: + e – Precedência mais baixa

30 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Regras de Precedência Os operadores aritméticos binários *, /, e %, têm menor precedência que os unários +, -, ++, --, e !, mas têm maior precedência que os operadores aritméticos binários + e -. Quando os operadores binários têm igual precedência, a avaliação é da esquerda para a direita. Quando um operador unário tem igual precedência, o operador à direita actua antes do operador da esquerda.

31 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso: enunciado Enunciado –O utilizador entra com a importância entre 1 e 9 cêntimos. –O programa determina a mínima combinação de moedas da importância. –Por exemplo, 7 cêntimos pode ser uma moeda de 5 cêntimos e uma moeda de 2 cêntimos.

32 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso– diálogo Diálogo –Pergunta Introduza a importância em cêntimos (1 a 9) –Resposta do utilizador 9 –A máquina determina e escreve a combinação de moedas: 9 cêntimos: Para obter os 9 cêntimos é necessário no mínimo: 1 de 5 cêntimos 2 de 2 cêntimos 0 de 1 cêntimo Variáveis necessárias int centimos, centimos5, centimos2, centimos1;

33 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso - algoritmo Algoritmo - primeira versão –Escrever a pergunta. –Ler a importância para centimos. –Determinar quantos 5 cêntimos existem na importância para centimos5. –Subtrair o valor em 5 cêntimos a centimos. –Repetir os últimos dois passos para os 2 cêntimos ( centimos2 ) e para os 1 cêntimo ( centimos1 ) –Escrever a importância lida ( centimos ) e o número de moedas de cada moeda ( centimos5, centimos2, centimos1 ).

34 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso– algoritmo final O algoritmo não trabalha correctamente, porque a importância original foi alterada nos passos intermédios - a importância original centimos perdeu-se. Modificar as variáveis iniciais para int centimos, centimosIniciais, centimos5, centimos2; Actualizar o algoritmo: –Escrever pergunta e ler os cêntimos –Guardar a importância original em centimosIniciais –Calcular quantos 5 cêntimos existem em centimos. –Subtrair o valor em 5 cêntimos aos centimos. –Repetir os últimos dois passos para os 2 cêntimos –Em centimos estão o número de moedas de 1 cêntimo. –Escrever os cêntimos iniciais e a quantidade de cada moeda

35 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso - implementação Escrever em Java o código que implementa o algoritmo escrito em pseudo-code. Como determinar o número de moedas na importância? –Por exemplo, de 5 cêntimos existe 1 em 6 e 9 cêntimos. Isto porque: 6 / 5 = 1 e 9 / 5 = 1. Como determinar o resto dos cêntimos? –Para obter o resto da importância usa-se o operador resto 6 % 5 = 1 e 9 % 5 = 4 –Para as restantes moedas é similar. –As moedas de 1 cêntimo são simplesmente o resto da divisão ( % ) por 2.

36 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso - implementação import java.util.*; public class Moedas { public static void main(String[] args) { // Declarar as variáveis int centimos, centimosIniciais, centimos5, centimos2; // Escrever pergunta System.out.print(" Introduza a importância em cêntimos (1 a 9)? "); Scanner keyboard = new Scanner(System.in); centimos = keyboard.nextInt(); // Ler os cêntimos centimosIniciais = centimos; // Guardar a importância original centimos5 = centimos / 5; // Obter o número de moedas de 5 cêntimos centimos = centimos % 5; centimos2 = centimos / 2; // Obter o número de moedas de 2 cêntimos centimos = centimos % 2; // Escrever os cêntimos iniciais e a quantidade de cada moeda System.out.println("Para obter os " + centimosIniciais + " cêntimos é necessário no mínimo:"); System.out.println(" "+ centimos5 + " moeda(s) de 5 centimos"); System.out.println(" "+ centimos2 + " moeda(s) de 2 centimos"); System.out.println(" "+ centimos + " moeda(s) de 1 centimos"); }

37 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Estudar um caso - teste O programa deve ser testado com diferentes importâncias. Testar com valores que dêem zero para cada uma das moedas. Testar com importâncias limites tais como –extremos 0 e 9 –Das moedas, tais como 4, 5 e 6.

38 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operadores Incremento e Decremento Usados para aumentar, ou diminuir, o valor de uma variável de 1 Fácil de usar, importante reconhecer O operador incremento contador++ ou ++contador O operador decremento contador-- ou –-contador Operações equivalentes: contador ++; ++ contador ; contador --; -- contador ; contador = contador + 1; contador = contador - 1;

39 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Operadores Incremento e Decremento em Expressões Depois de executar int m = 4; int result = 3 * ( ++m ) result tem o valor 15 e m tem o valor 5 Depois de executar int m = 4; int result = 3 * ( m++ ) result tem o valor 12 e m tem o valor 5

40 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Classes Uma classe é um tipo usado para produzir objectos. Um objecto é uma entidade que armazena dados e pode executar as acções definidas nos métodos. Objectos duma mesma classe –Têm os mesmos métodos –Têm o mesmo tipo de dados mas contêm dados com diferentes valores. Tipos primitivos têm valores, mas não têm métodos. Um objecto do tipo String armazena uma sequência de caracteres. O método length() retorna o número de caracteres contidos no objecto do tipo String. int quantosCaracteres = nome.length();

41 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Classe String O valor do tipo String é uma sequência de caracteres que se comporta como um único item. Tem-se usado o tipo String em: –Literais : "Introduza um valor de 1 a 99." –Declarações: String saudar; ou String saudar = "Hello!"; ou String saudar = new String("Hello!"); –Instruções de afectação : saudar = "Hello!"; ou saudar = new String("Hello!"); –Escrita : System.out.println( saudar );

42 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Classe String Uma string pode ter qualquer número de caracteres, inclusive zero. Uma string com zero caracteres é denominada string vazia (empty). A string vazia pode ser criada : String s3 = ""; Duas strings são concatenadas usando o operador + : String saudar = " Hello " ; String frase; frase = saudar + " alunos " ;

43 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Concatenação de Strings O operador concatenação ( + ) é útil sempre que a string não cabe numa linha: System.out.println("Quando a frase " + " não cabe numa linha, tem que se usar o " + " operador concatenação "); Podem ser concatenadas qualquer número de strings usando o operador +. Concatenação de strings com inteiros String resultado; resultado = "A temperatura é " + 72; System.out.println ( resultado ); é escrito: A temperatura é 72

44 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da String

45 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da String

46 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da String

47 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da String

48 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education A posição é referida como índice. –O ' d ' na string Java é divertido. está no índice 7. A posição começa em 0, não em 1. –O ' J ' na string Java é divertido. está no índice 0. O método charAt() retorna o carácter que está na posição passada como parâmetro. Os 17 caracteres da string Java é divertido. têm índices de 0 a 16. O índice de cada carácter é: Posições na String

49 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Não se modifica objectos String Nenhum método permite que se modifique o valor de um objecto do tipo String. Mas é possível modificar o valor da variável do tipo String. valor da pausa String pausa = " Hmm "; pausa Hmm pausa = pausa.trim() pausa Hmm pausa = pausa + "mmm! "; pausa Hmmmmm pausa = "Ahhh"; pausa Ahhh

50 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Caracteres de Escape Como é que se escreve Linguagem "Java". ? O compilador necessita de saber que a aspa ( " ) não é a marca de fim de string, mas sim para ser escrita. System.out.println("Linguagem \"Java\"."); Outros exemplos: System.out.println("abc\\def"); abc\def System.out.println("new\nline"); new line char singleQuote = '\''; System.out.println(singleQuote); '

51 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Caracteres de Escape Cada sequência de escape é um único carácter embora seja escrito com dois símbolos.

52 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Strings vazias e longas Uma string pode ter qualquer número de caracteres, inclusive zero, mas não pode ser quebrada por uma mudança de linha. Uma string com zero caracteres é denominada string vazia (empty). A string vazia pode ser criada: String s3 = ""; O operador concatenação ( + ) é útil sempre que a string não cabe numa linha. System.out.println("Quando a frase " + "não cabe numa linha, use o" + " operador concatenação"); Em alternativa, usar o método print() System.out.print("Quando a frase "); System.out.print("não cabe numa linha, use o "); System.out.println("método \"print\" "); terminando com o println().

53 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Classe Scanner

54 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Classe Scanner

55 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Método nextLine() ATENÇÂO O método nextLine() lê o que resta da linha corrente, mesmo que ela esteja vazia. Exemplo int n; String s1, s2; n = keyboard.nextInt(); s1 = keyboard.nextLine(); s2 = keyboard.nextLine(); 5440 ou dois n é afectado com 5440 e s1 é afectado com a string vazia.

56 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education A classe Math A classe predefinida Math providencia vários métodos matemáticos standard. –Não é necessário criar objectos para invocar os métodos da classe Math. –Estes métodos são invocados usando o nome da classe ( Math ) seguida do operador ponto e do nome do método. valor = Math.nome_método(parâmetros);

57 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da classe Math

58 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Métodos da classe Math O método round retorna o número mais próximo do número. –Se o argumento é do tipo double, retorna um número do tipo long. O método floor (ou o ceil ) retorna o número mais próximo que é menor (ou maior) ou igual ao argumento. Para armazenar o valor retornado pelos métodos anteriores numa variável do tipo inteiro, é necessário usar uma conversão explícita (cast). double valor = 3.56; int maisProximo = (int)Math.round(valor); //4 int limiteInferior = (int)Math.floor(valor); //3 int limiteSuperior = (int)Math.ceil(valor); //4

59 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Constantes da classe Math A classe Math tem duas constantes predefinidas, o E e o PI. –Exemplo area = Math.PI * raio * raio;

60 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Documentação e Estilo Muitos programas são modificados algumas vezes para responder a novos requisitos. Programas que são fáceis de ler e de compreender são fáceis de modificar. Mesmo que um programa seja usado só uma vez, é necessário lê-lo de forma a conseguir fazer o debug. Os melhores programas são auto-documentados. –Claros no estilo –Nomes bem escolhidos Programas bem comentados explicam o programa. –Os comentários são úteis para o programador, mas são ignorados pelo compilador.

61 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Construção dos nomes O nome de uma variável deve sugerir o seu uso. Convenções para os nomes. –Usar só letras e dígitos. –Usar letras maiúsculas para separar palavras (e.g. corDeFundo ). –Começar variáveis com letras minúsculas. –Começar classes com letras maiúsculas.

62 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Comentários Um comentário pode começar com //. –Tudo depois destes símbolos e até ao fim da linha é tratado como comentário e ignorado pelo compilador. double raio; //em centímetros Um comentário pode começar com /* e terminar */ –Tudo entre estes símbolos e até ao fim da linha é tratado como comentário e ignorado pelo compilador. /* O método perimetroTriangulo é usado para calcular o perímetro de um triangulo dados os lados */ Um comentário javadoc, começa com /** e termina com */. – Pode ser extraído automaticamente por software Java. /** Método que calcula o perímetro de um triangulo dados os lados */

63 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Quando usar Comentários? No início do ficheiro com uma explicação –O que o programa faz –O nome do autor –Contactos do autor –Data da última modificação. Ao longo do programa providenciar comentários de forma a possibilitar a sua compreensão.

64 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education

65 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Indentation A indentation permite clarificar o alinhamento das instruções. É boa escolha 4 espaços por cada nível de indentação. indentation deve ser consistente. indentation deve ser utilizada nas linhas seguintes das instruções aninhadas. indentation não modifica o comportamento do programa. indentation impróprias podem provocar erros no comportamento do programa.

66 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Constantes com nome Para clarificar, devem ser dados nomes às constantes (e variáveis). area = PI * radius * radius; é mais claro do que area = * radius * radius; Colocar as constantes perto do início do programa. Uma vez afectado o valor da constante, pode ser usada (e reflectida) do princípio ao fim do programa. double MAX = 6.65; Se o literal em uso (tal como 6.65), necessitar de ser modificado, corre-se o risco de outro literal com o mesmo valor ser alterado sem que fosse essa a intenção.

67 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Declarar Constantes Sintaxe [public] [static] final = ; Exemplos public static final double PI = ; public static final String MOTTO = "O cliente está sempre certo."; –Por convenção são utilizadas unicamente letras maiúsculas para os nomes das constantes.

68 Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN © 2005 Pearson Education Sumário Familiarizamo-nos com os tipos primitivos em Java (números, caracteres e booleanos). Aprendemos expressões e a instrução de afectação. Aprendemos strings. Familiarizamo-nos com classes, métodos, e objectos. Aprendemos a usar o teclado como input e o ecrã como output.


Carregar ppt "Adaptação dos acetatos originais do livro: Java- An Introduction to Problem Solving & Programming, 4ª Edição Autor: Walter Savitch, ISBN 013149020 © 2005."

Apresentações semelhantes


Anúncios Google