JAVA Referências, Strings e Arrays

Documentos relacionados
Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

Arrays (Vetores) Arrays (Vetores) 28/04/ Índices. profs. } Ex1: Se eu preciso manipular 100 nomes de pessoas ao mesmo tempo... é melhor...

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Sexta aula

Estruturas de Repetição e String

5 Arrays. 5.1 Criando um array. 5.2 Inicializando arrays. c:\>java Array Janeiro tem 31 dias.

Estruturas de Repe,ção e String

Linguagem de Programação III

Algoritmos e Estruturas de Dados I

Java na Cabeça Mudando de Paradigma

Lição 4 Fundamentos da programação

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Estruturas de Repetição e String. Vanessa Braganholo

Desenvolvimento de Aplicações Desktop

String. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

CURSO DE POO COM JAVA

Variáveis primitivas e Controle de fluxo

4. Constantes. Constantes pré-definidas

Algoritmos II prof. Daniel Oliveira

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

AULA 6 - ARRAYS. Array de 10 elementos

Estruturas de Condição, Iteração, Arrays e Enumareção

Aula 2 POO 1 Prática. Profa. Elaine Faria UFU

Aula 4 Estruturas de Controle

Strings e Arrays. Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB

Array em Java. Figura 1 - Exemplo de um array de inteiros

Agenda. O que é um array. Declaração de um array. Instanciação de um array. Acessando os elementos de um array. O tamanho de um array (length)

Introdução à Programação. Estruturas de Repetição

Diagramas Sintáticos

Noçõ linguagem Java. Profs. Marcel Hugo e Jomi Fred Hübner. Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB

ALOCAÇÃO DINÂMICA DE MEMÓRIA

Estruturas de Controle em c#

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Quinta aula

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Introdução à Linguagem de Programação Java 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO

Análise de Programação

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

EXPRESSÕES BOOLEANAS. Ex: boolean b = false; // declara uma variável do tipo boolean e atribui false

Introdução à Programação em C. Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI

Desenvolvimento de Aplicações Desktop

INSTRUÇÕES DE REPETIÇÃO

USP - ICMC - SSC SSC o. Semestre 2010 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

Introdução à Programação. Estruturas de Repetição

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Atualização Técnica e Pedagógica de Professores no componente de Lógica de Programação com C# (console) Semana 4 Vetor e Matriz

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Sintaxe da linguagem Java

Laboratório de Programação II

Linguagem Java: Sintaxe Java

Aula 10: Introdução a Vetores e Matrizes

Computação II Orientação a Objetos

Tipos Primitivos, estruturas de iteração e decisão.

Python Listas e Strings. Listas 23/11/2016. Por que usar listas? Listas. Listas - Solução. Listas - Problema

Linguagem Java - Introdução

Tipos, Literais, Operadores

Tipos, Literais, Operadores

Prof. A. G. Silva. 13 de setembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de setembro de / 21

05/11/2018. Linguagem de Programação e Estruturada

Prof. A. G. Silva. 28 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de / 1

Programação Orientada a Objetos II Java Segunda aula. Prof. Rogério Albuquerque de Almeida

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça

Estrutura do programa

Aula de hoje. Tipos de Dados e Variáveis. Constantes literais. Dados. Variáveis. Tipagem dinâmica. SCC Introdução à Programação para Engenharias

Algoritmos e Programação

Engenharia Elétrica AAM. Professor: Marco Shawn Meireles Machado

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;

Aula 06 Introdução à Programação Matrizes

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

AULA 02 DADOS PRIMITIVOS E EXERCÍCIOS

Palavras Reservadas da Linguagem Java

Algoritmos e Programação

LÓGICA DE PROGRAMAÇÃO (JAVA) ESTRUTURAS REPETIÇÃO. Professor Carlos Muniz

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA. DIM0320 Algoritmos e Programação de Computadores

String. Demonstrar a utilização e manipulação com os métodos da classe String.

Programação de Computadores II

Técnicas de Programação II

Programação Estruturada

Seleção Múltipla Laços (while, do-while, for) AULA 05

POO Programação Orientada a Objetos. Classes e Objetos 2

Sintaxe Básica do Java. João Paulo Q. dos Santos

Minicurso de JavaScript PET Sistemas de Informação Segundo Dia Anthony Tailer. Clecio dos Santos. Rhauani Fazul.

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios.

FACULDADE BATISTA MINEIRA - CST Banco de Dados Estruturas de Dados - Variáveis

Lição 7 Array em Java

Módulo 03. Identificadores, Palavras Reservadas, e Tipos

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano

ESTRUTURAS COMPOSTAS

Fundamentos de Lógica e Algoritmos. Aula 3.2 IDLE, Variáveis e Tipos. Prof. Dr. Bruno Moreno

Comandos de controle de fluxo: if / for / while / do while.

Transcrição:

JAVA Referências, Strings e Arrays + Faculdade Mauricio de Nassau Linguagem de Programação II Curso de Engenharia de Telecomunicações 2

+ Tipos 3 Tipos primitivos int, float,... Tipos de referência Classes, interfaces,...

+ Referências 4 Variável primitiva guarda seu valor; Variável de objeto guarda um endereço para ele; Umareferênciapodeser imaginadacomoum apontador para o local onde está armazenado o objeto; num1 38 nome1 Fulano"

+ Referências 5 O que acontece? Antes: num1 num2 38 96 num2 = num1; Depois: num1 num2 38 38

+ Referências 6 O que acontece? Antes: nome1 nome2 Gabriel Silva Rafael Silva nome1 = nome2; Depois: nome1 nome2 Rafael Silva

+ Referências 7 EmJava nãose trabalhadiretamentecom osobjetos, mascom as referênciasparaos objetos; Issoalteraa maneiracomocopiamose comparamos os objetos;

+ Strings 8 Seqüência de caracteres; Em Java, String não é tipo primitivo; É tipode referência sãoobjetos! String str = Olá Mundo! ; String str = new String( Olá Mundo! );

+ Igualdade de Strings 9 O operador== nãodeveser usadopara compararmos se duas Strings são iguais; Deve-se usar o método equals da classe String str1 == str2 str1.equals(str2)

+ Strings 10 boolean equals(object o) String x = Gabriel ; String y = Silva ; boolean b = x.equals(y); //b == false

+ Strings 11 int indexof(string s): Retorna o índice do primeiro encontrado; ÍndicesemJava começamem0; Caso não encontre, retorna-1; String x = Clique para adicionar anotações ; String y = adicionar ; int i = x.indexof(y); // i == 12

+ Strings 12 String substring(int inicio, int fim): Retornaa substring do índiceinicio(inclusivo) até o índice fim(exclusivo); String x = Clique para adicionar anotações ; String y = x.substring(2, 5); // y é iqu

+ Strings 13 char charat(int indice): Caracter da posição índice; String x = Clique para adicionar anotações ; char c = x.charat(0); // c == C

+ Strings 14 boolean equalsignorecase(object o) igualdade ignorando diferenças entre maiúsculas e minúsculas int length() comprimento da strings; quantidade de caracteres

+ Prática 15 1. Refatoreas classe Conta e Cliente, implementando os seus respectivos métodos equals. Lembre que o método equalsdeve ter a seguinte assinatura: public boolean equals(object o); 2. Utilize os métodos equalsimplementados na questão anterior para comparar duas instâncias de conta e duas instâncias de cliente.

+ Tipo Enumerável 16 Adicionadonaversão5.0 de Java; Coleção de constantes que pertencem a uma única ideia ; EmJava, todotipoenumé umaclasse; Todoenumherdaimplicitamentede java.lang.enum: Nãopodeherdarde maisnenhumaoutraclasse; Veremos herança mais pra frente.

+ Tipo Enumerável 17 Os elementos devem ser separados por vírgula public enum TipoCliente { } NORMAL, ESPECIAL, OURO Cliente c = new Cliente(TipoCliente.OURO);

+ Tipo Enumerável 18 Como todoenumé uma classe, podemos adicionarmétodose atributos a ele public enum TipoCliente { NORMAL (0.1F), ESPECIAL (0.2F), OURO (0.3F) private float taxa; TipoCliente(float taxa) { this.taxa = taxa; } } public float gettaxa() { return this.taxa; }

+ Prática 19 1. Implemente o enumtipocliente. Este deve ser composto pelas constantes NORMAL, ESPECIAL e OURO. 2. Refatorea classe Cliente para que ela possua uma referência para um TipoCliente.

+ Arrays 20 São listas ordenadas de valores que permitem armazenar uma grande quantidade de informação; Nome do array inteiro Cada valor tem um índice numérico valores 0 1 2 3 4 5 6 7 8 9 79 87 94 82 67 98 87 81 74 91 Um array de tamanho N é indexado de 0 a N-1 Esse array guarda 10 valores indexados de 0 a 9

+ Arrays 21 TambémsãoObjetos tipos de referência; Todososelementosde um array sãodo mesmo tipo; Arrays têmtamanhofixodepoisde criados;

+ Arrays 22 0 1 2 3 4 5 6 7 8 9 79 87 94 82 67 98 87 81 74 91 int i = valores[3]; // i == 82 Para referenciarum determinadovalor armazenadoemum array, usa-se o nomedo array seguidodo índiceentre colchetes Essa expressão representa um inteiro e pode ser usada em qualquer lugar que uma variável de tipo inteiro pudesse também

+ Arrays 23 Outra maneira de descrever um array valores 79 87 94 82 67 98 87 81 74 91

+ Arrays 24 E para tipos referência words amizade lealdade honra - -

+ Declarando Arrays 25 int[] valores = new int[10]; O tipodavariávelvaloresé int[] (um array de inteiros) A variávelvaloresreferenciaum novo objetoarray que pode armazenar 10 inteiros Outros exemplos: float[] precos = new float[100]; String[] nomes = new String[21];

+ Estruturas de Controle [2] 26 Estruturas de repetição permitem executar um trecho de código várias vezes; Também podem ser chamados de loops; Assim como as estruturas condicionais, estruturas de repetição também são controladas por expressões booleanas; Tiposde estruturasde repetiçãoemjava while do while for for (foreach) Cadasituaçãopedeum tipode loop diferente!

+ while 27 while (condicao) { // instrução } Se condicaofor true, entãoa instruçãoé executada Apósa execuçãotersidorealizada, se a condicao continuar true, instrução é realizada novamente A execuçãose repeteindefinidamenteatéa condicao tornar-se false

+ while 28 avalia condição true false instrução

+ while 29 int x = 10; int[] a = {4, 2, 5, 1, 10}; boolean achou = false; int i = 0; while (achou == false && i < a.length) { if (a[i] == x) { achou = true; } } System.out.println(achou);

+ Loop infinito 30 CUIDADO! Casoa condiçãodo loop nuncasejafalse, então aquele laço será executado para sempre ; Erro de programação muito comum;

+ Loop Aninhado 31 Um loop pode conter uma outra estrutura de repetição dentro do seu corpo; Para cadaiteraçãoexterna, deve-se completar a interna;

+ do while 32 do { // instrução } while(condicao); A instruçãoé executadaumaprimeiravez A condicaoé avaliadae casosejatrue, a instrução é executada novamente A instrucaose repeteindefinidamenteatéa condicao tornar-se false

+ do while 33 true instrução avalia condição false

+ do while 34 int i = 0; do { i = i + 1; System.out.println(i); } while (i < 5); O corpodo do while é executadopelo menos uma vez

+ for 35 for (inicializacao; condicao; incremento) { // instrução } A inicializacaoé executadaumavezantes do loop começar A instruçãoé executadaatéa condicaotornar-se false O incrementoé executadoaofinal de cada iteração

+ for 36 inicialização avalia condição true false instrução incremento

+ for 37 int[] a = new int[10]; for (int i = 0; i < a.length; i++) { a[i] = i * 2; } O campo de inicialização pode ser usado para declarar uma variável O campo de incrementopodeser calculadodaforma queo programador quiser Usa-se o for quandosabemoso númerode iteraçõesou quando ele é facilmente calculado

+ for (foreach) 38 for (Tipo variavel : colecao) { // instrução } Introduzido na versão 5.0; Para cada elemento

+ for (foreach) 39 int[] numeros = {1, 2, 5, 7, 11, 13, 17, 19}; for (int i : numeros) { } System.out.println(i); Para cadaelementodacoleçãorealiza-se a(s) instrução(ões) do corpo do for;

+ Inicializando Arrays 40 Existem várias formas de fazê-lo int[] numeros = {13, 43, 1, 123} ; String[] animais = { cachorro, macaco, cavalo }; float[] precos = new float[5]; for (int i = 0; i < precos.length; i++) { precos[i] = 10 * (i + 1); }

+ Arrays Multidimensionais 41 Arrays unidimensionais armazenam uma lista de elementos; Arrays bidimensionaispodemser imaginadoscomoumatabela(matriz), com linhas e colunas; Arrays podem ter quantas dimensões forem necessárias;

+ Arrays Multidimensionais 42 EmJava um array multidimensional nãoé nada maisdo queum array de arrays; Um array bidimensionalpodeser declaradoespecificando-se o tamanhode cada dimensão separadamente; int[][] matriz = new int[3][3];

+ Arrays Multidimensionais 43 O elemento é referenciado usando dois índices: int valor = matriz[3][1]; Um array armazenado em uma linha, pode ser referenciado usando um índice: int[] linha = matriz[2];

+ Arrays 44 Se é feito um acesso a um elemento do array fora dos seus limites, é gerada um exceção: IndexOutOfBoundsException String[] animais = { Cavalo, Cachorro }; System.out.println(animais[2]);

+ Prática 45 1. Implemente a classe RepositorioConta. Esta deve ser responsável pro armazenar um conjunto de contas num array. Além disto deve possuir os métodos inserir (insere uma conta no array), remover (remove uma conta do array), pesquisar (retorna uma conta do arrayque possua o mesmo número). 2. Faça o mesmo para a classe Cliente, retornando no método pesquisar o cliente que possuir o mesmo cpf.