Introdução Java.

Slides:



Advertisements
Apresentações semelhantes
Introdução à Programação Um enfoque orientado a construção de modelos em programas baseados em objetos Gustavo Motta Departamento de Informática - UFPB.
Advertisements

Collections Marco Antonio, Arquiteto de Software – TJDF Atualizado Dezembro/2008.
Projeto 1.
Kleinner Farias e Raphael do Vale
Listas lineares Listas Lineares Fila Dupla Pilha Fila Saída restrita
Walfredo Cirne walfredo.dsc.ufpb.br
Classes e objetos Arrays e Sobrecarga
Departamento de Estatística e Informática
Hashing - Espalhamento
ArrayList e Genéricos Profs. PROG2 - UNISINOS.
Coleções em Java Vitor Brandi Junior
Pilhas Profa. Nádia Félix.
Universidade Católica de Angola Prática de laboratório Fundamentos de Programação II Frei Joaquim José Hangalo.
Java 2 Collections Framework
Linguagem de Programação II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Curso de Linguagem Java
Módulo 9 Strings , Coleções e I/O
Coleções em Java - Parte 2
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Bruno Inojosa MCP.NET Framework.NET com C#. Orientação a Objeto parte II.
POO - I PROF.: JEAN CARLO MENDES
Coleções em Java (Parte 1)
Array e ArrayList LPOO – 01/09/14.
Java Como Programar, 8/E Deitel/Deitel, 8e. Java – Como programar Copyright © 2010 Pearson Education Slide 1.
COLEÇÕES Dilvan Moreira (baseado no livro Big Java)
Capítulo 4. Conjuntos  Introdução  Principais operações de conjuntos  Principais interfaces de conjuntos  A interface Collection  A interface Iterator.
IFRN Técnico em Informática para Internet Strings e Arquivos Texto Prof. Gilbert Azevedo.
Strings e Arrays Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de Informática,
Aplicativos para Web Collections Prof. Odair
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ Professor: Dilvan Moreira.
Programação em Java Threads Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Linguagem de Programação – Aula 03 Prof. Me. Ronnison Reges Vidal.
UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA Sistemas Distribuídos Ciência da Computação 2o. Semestre / 2006 Prof. Fábio M. Costa
Disciplina: Estrutura de Dados Professor: Jeovane Reges Caxias – MA 2015 ACULDADE DE CIÊNCIAS E TECNOLOGIA DO MARANHÃO.
Polimorfismo e suas aplicações em C++.
EGP, CPC, 2004/05 Manipulação de strings, colecções e ficheiros em Visual Basic .Net João Pascoal Faria Dezembro de 2004.
ESTRUTURA DE DADOS Professor: Marcelo Mendes Turma: MBI-1
Programação Orientada a Objetos
INE5408 Estruturas de Dados
SQLite SQLite é um banco de dados Open Source. Ele suporta recursos de banco de dados relacionais padrão, como sintaxe SQL, transações, etc. SQLite suporta.
Introdução Java.
3.1 Classes e Objetos Em um programa orientado a objetos normalmente existem vários objetos de um mesmo tipo. Por exemplo, um programa de controle de.
INF1007 – Programação 2 9 – Pilhas
INF1007: Programação 2 9 – Tipos Abstratos de Dados
Prof. Wellington Franco
PROBLEMA DO EMPACOTAMENTO
Java: Interfaces Alcides Calsavara.
Estrutura de dados Pilhas e filas
Edson Susumu Asaga JavaBeans Edson Susumu Asaga
Programação Orientada a Objetos
Capítulo 20 Coleções genéricas
Listas Encadeadas.
Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.
Estruturas de Dados Dinâmicas
Wrappers.
Tipos Abstratos de Dados
Programação Orientada a Objetos
Rosemary Silveira Filgueiras Melo
Computação Eletrônica Vetores e Matrizes
Tipos Primitivos de Dados
A classe String.
Coleções em Java 1.
Ordenando Coleções A Classe Collections.
A interface java.util.List
CALCULADORA CARACTERE E VARIÁVEIS COMPOSTAS OU VETORES EM JAVA
Programação Funcional
Percorrendo coleções com Iterator
JAVA - BÁSICO COL. ESTADUAL MARIA AGUIAR TEIXEIRA
Programação de Computadores II
Programação de Computadores II
Transcrição da apresentação:

Introdução Java

Agenda A classe java.lang.String Principais Métodos de String Coleções As interfaces Principais implementações concretas Desvantagens das Coleções Inferface Collection Inteface List Implementações: ArrayList e LinkedList List : Exemplo Inteface Set Set : Exemplo Interface Map Implementações de Map e Map.Entry Exemplo

A classe java.lang.String É uma seqüência de caracteres imutável ƒ Representa uma cadeia de caracteres Unicode ƒ Otimizada para ser lida, mas não alterada ƒ Nenhum método de String modifica o objeto armazenado Há duas formas de criar Strings ƒ Através de construtores, metodos, fontes externas, etc: String s1 = new String("Texto"); String s2 = procurador.retornaNome(); // método de API String s3 = coisa.toString(); ƒ Através de atribuição de um literal String s3 = "Texto"; Igualdade de Strings deve ser tratado pelo método equals() ou equals IgnoreCase if(s1.equals(s2)) // Não utilizar o ==

Principais Métodos de String Métodos que criam novos Strings ƒ String concat(String s): retorna a concatenação do String atual com outro passado como parâmetro ƒ String replace(char old, char new): troca todas as ocorrências de um caractere por outro ƒ String substring(int start, int end): retorna parte do String incluindo a posição inicial e excluíndo a final ƒ String toUpperCase() e String toLowerCase(): retorna o String em caixa alta e caixa baixa respectivamente ƒ Métodos para pesquisa ƒ boolean endsWith(String) e startsWith(String) ƒ int indexOf(String), int indexOf(String, int offset): retorna posição ƒ char charAt(int posição): retorna caractere em posição ƒ Outros métodos ƒ char[] toCharArray(): retorna o vetor de char correspondente ao String ƒ int length(): retorna o comprimento do Strin

Coleções Classes e interfaces do pacote java.util que representam listas, conjuntos e mapas ƒ Solução flexível para armazenar objetos ƒ Quantidade armazenada de objetos não é fixa, como ocorre com vetores ƒ Poucas interfaces (duas servem de base) permitem maior reuso e um vocabulário menor de métodos ƒ add(), remove() - principais métodos de interface Collection ƒ put(), get() - principais métodos de interface Map ƒ Implementações parciais (abstratas) disponíveis para cada interface ƒ Há duas ou três implementações de cada interface

As interfaces 6

Principais implementações concretas Alguns detalhes foram omitidos: ƒ Classes abstratas intermediárias ƒ Interfaces intermediárias ƒ Implementações menos usadas 7

*Desvantagens das Coleções ƒ Menos eficientes que vetores ƒ Não aceitam tipos primitivos (só empacotados) 8

Interface Collection ƒ Principais subinterfaces ƒ List ƒ Set ƒ Principais métodos (herdados por todas as subclasses) ƒ boolean add(Object o): adiciona objeto na coleção ƒ boolean contains(Object o) ƒ boolean isEmpty() ƒ boolean remove(Object o) ƒ int size(): retorna o número de elementos ƒ Object[] toArray(Object[]): converte coleção em Array 9

Interface List Principais subclasses ƒ ArrayList ƒ LinkedList ƒ Principais métodos adicionais ƒ void add(int index, Object o): adiciona objeto na posição indicada (empurra elementos existentes para a frente) ƒ Object get(int index): recupera objeto pelo índice ƒ int indexOf(Object o): procura objeto e retorna índice da primeira ocorrência ƒ Object set(int index, Object o): grava objeto na posição indicada (apaga qualquer outro que ocupava a posição). ƒ Object remove(int index) 10

Implementações: ArrayList e LinkedList ƒ Escolha natural quando for necessário usar um vetor redimensionável: mais eficiente para leitura ƒ Implementado internamente com vetores ƒ Ideal para acesso aleatório ƒ LinkedList ƒ Muito mais eficiente que ArrayList para remoção e inserção no meio da lista ƒ Ideal para implementar pilhas, filas unidirecionais e bidirecionais. Possui métodos para manipular essas estruturas ƒ Ideal para acesso seqüencial 11

List: exemplo List<String> lista = new ArrayList<String>(); lista.add(new String("um")); lista.add(new String("dois")); lista.add(new String("tres")); String c3 = lista.get(2); // == índice de vetor for(String s : lista) { System.out.println(s); } 12

Interface Set ƒ Set representa um conjunto matemático ƒ Não possui valores repetidos ƒ Principais subclasses ƒ TreeSet (implements SortedSet) ƒ HashSet (implements Set) ƒ Principais métodos alterados ƒ boolean add(Object): só adiciona o objeto se ele já não estiver presente (usa equals() para saber se o objeto é o mesmo) ƒ contains(), retainAll(), removeAll(), ...: redefinidos para lidar com restrições de não-duplicação de objetos (esses métodos funcionam como operações sobre conjuntos) 13

Exemplo Set conjunto = new HashSet(); conjunto.add("Um"); conjunto.add("Dois"); conjunto.add("Tres"); for(String s : conjunto){ System.out.println(s); } Imprime em sequencia arbritrária ƒ Tres Dois Um 14

Obrigado!!! Humberto da Silva