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

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

Capítulo 14 Classes Utilitárias. 2Capítulo 14 – Classes Utilitárias Classes Utilitárias Pacote java.lang Pacote java.text Pacote java.util.

Apresentações semelhantes


Apresentação em tema: "Capítulo 14 Classes Utilitárias. 2Capítulo 14 – Classes Utilitárias Classes Utilitárias Pacote java.lang Pacote java.text Pacote java.util."— Transcrição da apresentação:

1 Capítulo 14 Classes Utilitárias

2 2Capítulo 14 – Classes Utilitárias Classes Utilitárias Pacote java.lang Pacote java.text Pacote java.util

3 3Capítulo 14 – Classes Utilitárias Pacote java.lang Classe String Classes StringBuilder e StringBuffer Classe Math Classes wrappers Classe Object Classe System

4 4Capítulo 14 – Classes Utilitárias Classe java.lang.String Representa uma seqüência de quaisquer tipos de caracteres e de qualquer tamanho. String nome = new String(Joaquim Oliveira); ou String nome = Joaquim Oliveira;

5 5Capítulo 14 – Classes Utilitárias Métodos de um String SintaxeResultado frase1.length()14 frase1.charAt(1)i frase1.equals(frase2)false frase1.equalsIgnoreCase(frase2)true frase1.indexOf(J)10 frase1.concat( versão 6);Linguagem Java versão 6 frase1.replaceAll(Java, Delphi)Linguagem Delphi frase1.substring(3, 5)gu frase1.toLowerCase()linguagem java frase1.toUpperCase()LINGUAGEM JAVA Considere os Strings abaixo: String frase1 = Linguagem Java; String frase2 = LINGUAGEM JAVA;

6 6Capítulo 14 – Classes Utilitárias Método length() Retorna a quantidade de caractes contidos no String. String nome = Manuel da Silva; int tamanho = nome.length(); System.out.println(Seu nome possui + tamanho + caracteres.); Seu nome possui 15 caracteres

7 7Capítulo 14 – Classes Utilitárias Método charAt() Retorna o caracter na posição especificada. String nome = Manuel da Silva; char letra = nome.charAt(2); System.out.println(Letra da posição 2: + letra); Letra da posição 2: n

8 8Capítulo 14 – Classes Utilitárias Método equals() Verifica se o string é igual a um outro string especificado. String a = casa; String b = nova; String c = casanova; System.out.println(c == a + b); System.out.println(c.equals(a + b)); false true

9 9Capítulo 14 – Classes Utilitárias Método equalsIgnoreCase() Verifica se o string é igual a um outro string especificado sem diferenciar maiúsculas e minúsculas. String frase1 = Linguagem Java; String frase2 = LINGUAGEM JAVA; System.out.println(frase1.equals(frase2)); System.out.println(frase1.equalsIgnoreCase(frase2)); false true

10 10Capítulo 14 – Classes Utilitárias Método indexOf() Procura dentro de si por um trecho de string especificado String frase = Linguagem Java; int posicao = frase.indexOf(Java); System.out.println( A palavra Java está na posição + posicao); A palavra Java está na posição 10

11 11Capítulo 14 – Classes Utilitárias Método concat() Retorna um novo String contendo o String original concatenado ao String especificado. String frase1 = Linguagem Java; String frase2 = frase1.concat( versão 6); System.out.println(frase1); System.out.println(frase2); Linguagem Java Linguagem Java versão 6

12 12Capítulo 14 – Classes Utilitárias Método replaceAll() Retorna um novo String igual ao original contendo trechos substituídos. String frase1 = Linguagem Java; String frase2 = frase1.replaceAll(Java, Delphi); System.out.println(frase1); System.out.println(frase2); Linguagem Java Linguagem Delphi

13 13Capítulo 14 – Classes Utilitárias Método substring() Retorna um trecho do String original. String frase = Linguagem Java; String trecho1 = frase.substring(10, 12); String trecho2 = frase.substring(10); System.out.println(trecho1); System.out.println(trecho2); Ja Java

14 14Capítulo 14 – Classes Utilitárias Método toLowerCase() Retorna uma cópia do String original convertido para letras minúsculas. String frase1 = Linguagem Java; String frase2 = frase1.toLowerCase(); System.out.println(frase2); linguagem java

15 15Capítulo 14 – Classes Utilitárias Método toUpperCase() Retorna uma cópia do String original convertido para letras maiúsculas. String frase1 = Linguagem Java; String frase2 = frase1.toUpperCase(); System.out.println(frase2); LINGUAGEM JAVA

16 16Capítulo 14 – Classes Utilitárias Método trim() Retorna uma cópia do String original excluíndo todos os caracteres não imprimíveis (espaços, tabulações, quebras de linha, etc) ao início e ao fim do String. String frase = Linguagem Java ; System.out.println(frase.trim()); Linguagem Java

17 17Capítulo 14 – Classes Utilitárias Características da classe String Uma vez criado, um String em memória não pode ser modificado. A concatenação ou outra operação sobre um String sempre gera a criação em memória de um outro String. Em operações sucessivas de concatenação e outras operações, a classe String não é a classe mais recomendada.

18 18Capítulo 14 – Classes Utilitárias Classes java.lang.StringBuilder e java.lang.StringBuffer Classes auxiliares utilizadas na manipulação de strings (concatenação e outras operações); Oferece maior desempenho em tarefas de concatenação ou alteração de strings; Possuem exatamente a mesma funcionalidade; A classe StringBuilder é mais performática e foi adicionada à linguagem a partir da versão 5; A classe StringBuffer é mais antiga e garante a sincronia em acessos multithread.

19 19Capítulo 14 – Classes Utilitárias Métodos do StringBuilder StringBuilder builder = null; builder = new StringBuilder("Linguagem Java"); builder.append(" 1.4"); System.out.println(builder); // Exibe Linguagem Java 1.4 builder = new StringBuilder("Linguagem Java"); builder.delete(0, 10); System.out.println(builder); // Exibe Java builder = new StringBuilder("Linguagem Java"); builder.insert(10, "de programação "); System.out.println(builder); // Exibe Linguagem de programação Java

20 20Capítulo 14 – Classes Utilitárias Método append() Adiciona um trecho de String ao final do buffer. StringBuilder builder; builder = new StringBuilder("Linguagem Java"); builder.append(" 1.4"); System.out.println(builder); Linguagem Java 1.4

21 21Capítulo 14 – Classes Utilitárias Método delete() Remove do buffer um trecho de String. StringBuilder builder; builder = new StringBuilder("Linguagem Java"); builder.delete(0, 10); System.out.println(builder); Java

22 22Capítulo 14 – Classes Utilitárias Método insert() Insere no buffer um trecho de String na posição especificada. StringBuilder builder; builder = new StringBuilder("Linguagem Java"); builder.insert(10, de programação ); System.out.println(builder); Linguagem de programação Java

23 23Capítulo 14 – Classes Utilitárias Métodos em cascata StringBuilder builder; String result; builder = new StringBuilder("Linguagem Java"); result = builder.insert(10, de programação ).delete(0, 10).append( 1.4).toString(); Necessário para tornar compatível com o tipo String

24 24Capítulo 14 – Classes Utilitárias Exercício Laboratório 1

25 25Capítulo 14 – Classes Utilitárias A classe java.lang.Math Contém métodos utilitários para cálculos matemáticos; Não precisa (nem pode) ser instanciada; Todos os seus membros são estáticos.

26 26Capítulo 14 – Classes Utilitárias Funções Matemáticas FunçãoDescrição Math.abs(a)Valor absoluto Math.cos(a)Cosseno (a em radianos) Math.log(a)Logarítmo neperiano Math.max(a, b)Maior valor entre a e b Math.min(a, b)Menor valor entre a e b Math.pow(a, b)Potência de base a e expoente b, ou seja (a b ) Math.random()Número fracionário aleatório entre 0 e 1 Math.round(a)Arredonda o valor de a Math.sin(a)Seno (a em radianos) Math.sqrt(a)Raiz quadrada Math.tan(a)Tangente (a em radianos)

27 27Capítulo 14 – Classes Utilitárias Método sqrt() Calcula a raiz quadrada do valor especificado. double result = Math.sqrt(144); System.out.println(result); 12.0

28 28Capítulo 14 – Classes Utilitárias Método round() Arredonda um double convertendo para long. long result = Math.round(4.97); System.out.println(result); 5

29 29Capítulo 14 – Classes Utilitárias Método abs() Converte um número para positivo. double result1 = Math.abs(-5.37); double result2 = Math.abs(8.5); System.out.println(result1); System.out.println(result2);

30 30Capítulo 14 – Classes Utilitárias Método ceil() Arredonda um número fracionário (double) sempre para cima. double result1 = Math.ceil(8.25); double result2 = Math.ceil(-2.4); System.out.println(result1); System.out.println(result2);

31 31Capítulo 14 – Classes Utilitárias Método floor() Arredonda um número fracionário (double) sempre para baixo. double result1 = Math.floor(8.25); double result2 = Math.floor(-2.4); System.out.println(result1); System.out.println(result2);

32 32Capítulo 14 – Classes Utilitárias Método max() Retorna o maior valor dentre dois números especificados. double result = Math.max(4.97, 8.6); System.out.println(result); 8.6

33 33Capítulo 14 – Classes Utilitárias Método min() Retorna o menor valor dentre dois números especificados. double result = Math.min(4.97, 8.6); System.out.println(result); 4.97

34 34Capítulo 14 – Classes Utilitárias Método pow() Retorna ao potência aritmética a partir de uma base e um expoente (um número elevado a outro). double result = Math.pow(3, 4); System.out.println(result); 81.0

35 35Capítulo 14 – Classes Utilitárias Método random() Retorna um número fracionário (double) aleatório entre 0 e 1. double result = Math.random(); System.out.println(result);

36 36Capítulo 14 – Classes Utilitárias Constante PI Constante matemática utilizada para cálculos trigonométricos. System.out.println(Math.PI);

37 37Capítulo 14 – Classes Utilitárias Método sin() Função trigonométrica que calcula o seno de um ângulo medido em radianos. double angulo = Math.PI / 2; System.out.println(Math.sin(angulo)); º

38 38Capítulo 14 – Classes Utilitárias Método cos() Função trigonométrica que calcula o cosseno de um ângulo medido em radianos. double angulo = Math.PI / 2; System.out.println(Math.sin(angulo)); 0.0

39 39Capítulo 14 – Classes Utilitárias Método tan() Função trigonométrica que calcula a tangente de um ângulo medido em radianos. double angulo = Math.PI / 3; System.out.println(Math.tan(angulo)); ( ) 60º

40 40Capítulo 14 – Classes Utilitárias Método toDegrees() Função trigonométrica que converte um ângulo em radianos para graus. double angulo = Math.PI / 2; System.out.println(Math.toDegrees(angulo)); 90.0

41 41Capítulo 14 – Classes Utilitárias Método toRadians() Função trigonométrica que converte um ângulo em graus para. double angulo = 90; System.out.println(Math.toRadians(angulo)); ( )

42 42Capítulo 14 – Classes Utilitárias Exercício Tabuada de potências Crie um programa em java que calcule todas as tabuadas de potenciação de 1 a elevado a 1 = 1 1 elevado a 2 = elevado a 1 = 1 2 elevado a 1 = 2 2 elevado a 2 = elevado a 10 =

43 43Capítulo 14 – Classes Utilitárias Exercício desafio Sorteio da Mega-sena Crie um programa em java que exiba seis dezenas da mega-sena aleatoriamente. Cada uma das dezenas deve ser um número inteiro entre 1 e 60. A cada vez que o programa for executado, novas dezenas deverão ser exibidas pelo programa

44 44Capítulo 14 – Classes Utilitárias Classes wrappers (invólucros) java.lang.Byte java.lang.Short java.lang.Integer java.lang.Long java.lang.Float java.lang.Double java.lang.Character java.lang.Boolean

45 45Capítulo 14 – Classes Utilitárias Classes wrappers (invólucros) Classes utilizadas para reter valores primitivos a serem tratados como objetos. Object[] listaObjetos = { new Cliente(João Silva, ), new ContaCorrente(7871, ), new Integer(26), new Double(750.5) }; Tipos primitivos não podem ser inseridos aqui. Utilize wrappers

46 46Capítulo 14 – Classes Utilitárias Autoboxing e Auto-unboxing Integer composto1 = new Integer(10); int primitivo1 = 10; Integer composto2 = primitivo1; int primitivo2 = composto1; Até a versão 1.4 não era permitido

47 47Capítulo 14 – Classes Utilitárias Autoboxing e Auto-unboxing Integer composto1 = new Integer(10); int primitivo1 = 10; Integer composto2 = primitivo1; int primitivo2 = composto1; A partir da versão 5, é aceito Autoboxing Auto-unboxing

48 48Capítulo 14 – Classes Utilitárias Conversão de texto Além disto, as classes wrappers possuem métodos estáticos utilizados na conversão de string. String s = 34.5; byte b = Byte.parseByte(s); short s = Short.parseShort(s); int i = Integer.parseInt(s); float f = Float.parseFloat(s); double d = Double.parseDouble(s);

49 49Capítulo 14 – Classes Utilitárias A classe java.lang.Object Principal classe da linguagem Java; É a classe mãe de todas as outras classes; Possui métodos de base que são automaticamente herdados por todas as classes que existem. Dentre os principais métodos encontrar herdados podemos citar o método toString() que pode ser sobrescrito por quaisquer classes tornando-as mais compreensíveis à aplicação

50 50Capítulo 14 – Classes Utilitárias O método toString() public class Funcionario { private int matricula; private String nome; private String cargo;... public String toString() { return matricula + – + nome; }

51 51Capítulo 14 – Classes Utilitárias O método toString() Funcionario f1 Funcionario f2; f1 = new Funcionario(345, Manuel, Padeiro); f2 = new Funcionario(829, Joaquim, Quitandeiro); System.out.println(Funcionário A: + f1); System.out.println(Funcionário B: + f2); Funcionário A: 345 – Manuel Funcionário B: 829 – Joaquim

52 52Capítulo 14 – Classes Utilitárias A classe java.lang.System Membro out: –Representa a saída padrão de texto ao usuário (geralmente o prompt de comando); –Seus principais métodos são print() e println() utilizados para exibição de dados.

53 53Capítulo 14 – Classes Utilitárias A classe java.lang.System Método exit() –Força o encerramento da aplicação Java if (resultadoOk) { // Saída com sucesso System.exit(0); } else { // Encerra avisando que ocorreu algum problema System.exit(1); }

54 54Capítulo 14 – Classes Utilitárias A classe java.lang.System Método getProperty() –Captura informações de ambiente do sistema operacional ou do próprio JVM String nomeOS = System.getProperty( os.name ); String versaoJava = System.getProperty( java.version );

55 55Capítulo 14 – Classes Utilitárias A classe java.lang.System Principais Propriedades do Java java.version Versão do Java java.vendor Fabricante java.class.path Class path (Relação de pastas de classes) java.io.tmpdir Diretório temporário do SO os.name Nome do SO os.version Versão do SO file.separator Separador de diretório ("/" no UNIX) path.separator Separador em listas (":" no UNIX) line.separator Separador de linhas ("\n" no UNIX) user.name Nome do usuário do SO user.home Diretório home do usuário user.dir Diretório corrente

56 56Capítulo 14 – Classes Utilitárias Pacotes java.util e java.text Classe java.util.Date Classe java.util.Calendar Classe java.text.SimpleDateFormat Classe java.text.DecimalFormat

57 57Capítulo 14 – Classes Utilitárias Classes java.util.Date e java.text.SimpleDateFormat java.util.Date – Representa uma data que pode ser formatada para exibição. java.text.SimpleDateFormat – Representa um formato de apresentação de data escolhido pelo programador

58 58Capítulo 14 – Classes Utilitárias Classes java.util.Date e java.text.SimpleDateFormat Date agora = new Date(); SimpleDateFormat mascara = new SimpleDateFormat(HH:mm:ss); System.out.println(São exatamente + mascara.format(agora)); São exatamente 22:43:15

59 59Capítulo 14 – Classes Utilitárias SimpleDateFormat Caracteres de Formatação SímboloDescrição yAno MMês dDia do mês (1-31) hHora (1-12) HHora (0-23) mMinuto sSegundo SímboloDescrição SMilissegundo EDia da semana DDia do ano wSemana do ano WSemana do mês aMarcador AM/PM

60 60Capítulo 14 – Classes Utilitárias Classe java.util.Calendar Também representa uma data Padronizada para diversos calendários regionais (Gregoriano, Budista, Japonês, outros) Tipicamente utilizada para efetuar cálculos com datas

61 61Capítulo 14 – Classes Utilitárias Calendar – Exemplo /* Captura a data de hoje no calendário do sistema */ Calendar c = Calendar.getInstance(); /* Altera c para 2 anos no futuro */ c.add(Calendar.YEAR, 2); /* Altera c retrocedendo 2 meses */ c.add(Calendar.MONTH, -2); /* Captura o dia do mês do calendário c */ int dia = c.get(Calendar.DAY_OF_MONTH); /* Altera o calendário c para a data 13/08/ :30:15 */ c.set(2004, 7, 13, 18, 30, 15);// O Mês é base zero

62 62Capítulo 14 – Classes Utilitárias Calendar – Campos Campos utilizados pelos métodos get e add: CampoDescrição Calendar.YEARAno Calendar.MONTHMês (0-11) Calendar.DAY_OF_MONTHDia do mês (1-31) Calendar.DAY_OF_WEEKDia da semana (1-Dom até 7-Sáb) Calendar.DAY_OF_YEARDia do ano (1-365) Calendar.HOURHora (1-12) Calendar.HOUR_OF_DAYHora(0-23) Calendar.MINUTEMinuto Calendar.SECONDSegundo Calendar.MILLISECONDMilissegundo

63 63Capítulo 14 – Classes Utilitárias Calendar – Outro exemplo /* Captura a data de hoje no calendário do sistema */ Calendar c = Calendar.getInstance(); /* Avança 90 dias */ c.add(Calendar.DAY_OF_MONTH, 90); /* Converte de Calendar para Date */ Date d = c.getTime(); /* Cria uma máscara para a data */ SimpleDateFormat mascara = new SimpleDateFormat(dd/MM/yyyy); /* Exibe a data no formato desejado */ System.out.println(Daqui a 90 dias será + mascara.format(d));

64 64Capítulo 14 – Classes Utilitárias Calendar Diferença entre datas /* Cria dois calendários */ Calendar nasc = Calendar.getInstance(); Calendar hoje = Calendar.getInstance(); /* Altera o calendário nasc para o dia do nascimento */ nasc.set(1988, 0, 15, 12, 10, 30);// 15/01/ :10:30 /* Obtem a representação interna dos calendários em milissegundos */ long intNasc = nasc.getTimeInMillis(); long intHoje = hoje.getTimeInMillis(); /* Calcula a idade (em milissegundos) */ long idade = intHoje – intNasc; /* Exibe a idade */ System.out.println(Você possui + idade + milissegundos de idade);

65 65Capítulo 14 – Classes Utilitárias Classe java.text.DecimalFormat É utilizada na formatação de números // Recebe o salario como double double salario = ; // Cria máscara de exibição DecimalFormat mascara = new DecimalFormat(#,##0.00); // Aplica máscara sobre o salario para exibir System.out.println(Salário: + mascara.format(salario));

66 66Capítulo 14 – Classes Utilitárias DecimalFormat Caracteres de Formatação SímboloDescrição 0Dígito de exibição obrigatória #Dígito de exibição opcional.Define a posição do separador decimal.,Define a posição do separador de milhares %Utilizado ao fim da formatação para indicar que o número deverá ser exibido em formato percentual.

67 67Capítulo 14 – Classes Utilitárias Exercício Crie um programa em Java que calcule quantos dias faltam para o natal do ano corrente.

68 68Capítulo 14 – Classes Utilitárias Classes estudas java.lang –String –StringBuilder –StringBuffer –Math –Byte –Short –Integer –Long –Float –Double –Character –Boolean –Object –System java.util –Date –Calendar java.text –SimpleDateFormat –DecimalFormat

69 69Capítulo 14 – Classes Utilitárias Conhecendo novas classes nativas do Java


Carregar ppt "Capítulo 14 Classes Utilitárias. 2Capítulo 14 – Classes Utilitárias Classes Utilitárias Pacote java.lang Pacote java.text Pacote java.util."

Apresentações semelhantes


Anúncios Google