Capítulo 21. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
|
|
- Mirella Correia Viveiros
- 8 Há anos
- Visualizações:
Transcrição
1 Capítulo 21 Coleções
2 Objetivos do Capítulo Analisar o conceito de coleção e sua relação com as estruturas de dados. Apresentar a arquitetura do framework de coleções do Java. Indicar as classes e interfaces do framework de coleções do Java que podem ser empregadas para a representação de cinco diferentes tipos de coleções: listas, pilhas, filas, conjuntos e mapas. Explorar os algoritmos disponíveis no framework de coleções do Java que permitem a realização de diferentes operações sobre coleções e sobre vetores.
3 Conceito de coleção Introdução Objeto Agrupa múltiplos elementos Organizaos sob determinada forma Realiza diferentes operações sobre eles Coleção & Estrutura de Dados E.D.: define uma forma de organização dos dados Coleção: Estrutura de dados préempacotada Parte integrante da API de determinado ambiente de programação
4 Coleções no JSE 1.0 Poucas coleções Introdução java.util.vector: vetor de objetos redimensionável java.util.stack: pilha de objetos java.util.hashtable: implementação de uma tabela de hash Criação de bibliotecas de terceiros Coleções no JSE 1.2 Introdução de um framework de coleções JCF: Java Collections Framework Arquitetura bem planejada Acréscimo de várias coleções novas Coleções no JSE 1.5 Reforma do JCF Adaptações para suporte a tipos genéricos
5 Características do JCF Introdução Arquitetura unificada de componentes Suporte a grande variedade de E.D. Listas Pilhas Filas Conjuntos Mapas Facilidade para extensão Algoritmos para operações com coleções Pesquisa Ordenação
6 Arquitetura do JCF Camada 1: interfaces Introdução Representam as coleções como TADs Manipulação uniforme da coleção (independente de implementação) Camada 2: classes abstratas São implementações parciais das coleções Reduzem o esforço para criação de novas coleções Camada 3: classes de implementação São classes concretas Oferecem uma implementação completa para a interface de uma coleção
7 Introdução Hierarquia de interfaces do JCF
8 Interface java.util.collection Introdução Define os métodos comuns a todas as coleções Não possui nenhuma implementação direta Permite a manipulação uniforme de diferentes tipos de coleções E = elemento Tipos de coleções java.util.list: representa uma lista java.util.queue: representa uma fila java.util.set: representa um conjunto java.util.sortedset: conjunto com elementos ordenados java.util.navigableset: conjunto ordenado e navegável
9 Interface java.util.map Introdução Representa um tipo especial de coleção: o mapa Mapeia chave para valores Não permite chaves duplicadas Parâmetros de tipo K: chave (key) V: valor (value) Tipos de mapas java.util.sortedmap: mapa com elementos ordenados java.util.navigablemap: mapa ordenado e navegável
10 Hierarquia de classes do JCF Introdução
11 Introdução Implementações para coleções
12 Introdução Métodos da interface Collection boolean add(e e): adiciona um elemento void clear( ): remove todos os elementos boolean contains(object o): se a coleção contém o elemento Pesquisa utiliza o método equals( ) do objeto boolean isempty( ): se a coleção está vazia Iterator<E> iterator( ): retorna um iterator boolean remove(object o): remove um elemento Pesquisa utiliza o método equals( ) do objeto int size( ): retorna a quantidade de elementos Object[] toarray( ): copia os elementos para um vetor T[] toarray(t[] a): copia os elementos para um vetor
13 Iterator Introdução Objeto que controla a navegação por uma coleção Só suporta navegação unidirecional Métodos da interface java.util.iterator boolean hasnext( ): verifica se ainda há mais um elemento E next( ): avança o cursor e retorna o elemento seguinte Pode disparar uma java.util.nosuchelementexception void remove( ): remove o elemento atual Não é suportado por todas as coleções
14 Implementações para mapas Introdução AbstractMap: implementação parcial HashMap: implementação completa de um mapa TreeMap: implementação de um mapa ordenado e navegável
15 Introdução Outros componentes importantes do JCF classe java.util.collections: algoritmos para coleções classe java.util.arrays: algoritmos para vetores interface java.util.listiterator: iterator para listas interface java.lang.comparable: critério único para ordenação interface java.util.comparator: múltiplos critérios de ordenação
16 Conceito Listas Coleção de elementos em seqüência Permite elementos duplicados Acesso através de índice Suporte à pesquisa e ordenação
17 Métodos da interface List Listas void add(int index, E element): insere o elemento na posição especificada O método add( ) herdado insere no final E get(int index): recupera o elemento da posição especificada int indexof(object o): retorna o índice da primeira ocorrência int lastindexof(object o): retorna o índice da última ocorrência ListIterator<E> listiterator( ): retorna um iterator que inicia a navegação no início da lista ListIterator<E> listiterator(int index): retorna um iterator que inicia a navegação na posição especificada E remove(int index): remove o elemento da posição especificada E set(int index, E element): substitui o elemento da posição especificada List<E> sublist(int fromindex, int toindex): retorna uma lista composta por parte dos elementos
18 Listas Métodos da interface ListIterator void add(e e): inclui o elemento na posição anterior ao cursor boolean hasprevious( ): se há um elemento antes do cursor int nextindex( ): retorna o índice do elemento que está após o cursor E previous( ): recupera o elemento anterior e posiciona o cursor antes dele int previousindex( ): retorna o índice do elemento que está antes do cursor void set(e e): substitui o último elemento retornado pelos métodos next( ) e previous( ) Obs.: o cursor deste tipo de iterator sempre permanece entre dois elementos da lista.
19 Implementações para listas Vector Listas Disponível desde o JSE 1.0 Mecanismo de armazenamento: vetor de objetos Operações sincronizadas (redução de desempenho) Métodos originais coincidentes com métodos da interface List o addelement( ) = add( ) ArrayList Disponível desde o JSE 1.2 Mecanismo de armazenamento: vetor de objetos Capacidade inicial padrão: 10 Redimensionamento: cópia dos elementos para um vetor maior Operações não sincronizadas (aumento de desempenho) ArrayList(int initialcapacity): capacidade inicial customizada ensurecapacity(int mincapacity): garante uma capacidade mínima trimtosize( ): elimina posições não ocupadas
20 Implementações para listas LinkedList Listas Disponível desde o JSE 1.2 Mecanismo de armazenamento: lista duplamente encadeada Implementação completa da interface List Uniformidade na recuperação, inserção e remoção de elementos o Controle nas duas extremidades Outras aplicações: pilhas e filas
21 Listas Exemplos ExemploCollection colecao : Collection<Contato> + main (String args[]) exibirestado () nome String : String Contato Contato () Contato (String nome, String ) getnome () get () setnome (String nome) set (String ) tostring () equals (Object obj) hashcode () : String : String : String : boolean : int ExemploListaInclusao lista : List<Contato> + main (String args[]) incluir (int posicao) relatorio () ExemploArrayList lista : List<Contato> + main (String args[]) incluir () excluir () alterar () consultar () relatorio () ExemploLinkedList lista : LinkedList<Contato> + main (String args[]) incluir () excluir () consultar () relatorio ()
22 Listas Código 21.1 Contato.java public boolean equals( ) if (obj == null) return false; if (getclass()!= obj.getclass()) return false; if (this == obj) return true; final Contato other = (Contato) obj; if (nome == null && other.nome!= null) return false; if (nome!= null && other.nome == null) return false; if (!nome.equals(other.nome)) return false; return true; public int hashcode( ) return 31 + ((nome == null)? 0 : nome.hashcode());
23 Listas Código 21.2 ExemploCollection.java Atributo: lista de contatos (ArrayList) exibirestado( ): indicar estado e tamanho da lista main( ): Permitir o registro de um número indefinido de contatos Não permitir o registro de dois contatos com o mesmo nome o Exibir mensagem de erro Recuperar a lista de contatos com um foreach Recuperar a lista de contatos com um iterator Exibir o estado da coleção Esvaziar a coleção Exibir novamente o estado da coleção
24 Listas Código 21.3 ExemploListaInclusao.java Atributo: lista de contatos (ArrayList) incluir(int posicao) Permitir a inclusão de um contato na lista Incluir na posição especificada Não permitir o registro de dois contatos com o mesmo nome relatorio( ) Exibir a lista de contatos registrados main( ): Exibir um diálogo com as três opções do aplicativo Executar o método correspondente
25 Listas Código 21.4 ExemploArrayList.java Atributo: lista de contatos (ArrayList) incluir(): incluir contato no final da lista Não permitir nome duplicado excluir(): excluir contato com base no nome informado Exibir mensagem de confirmação com dados do contato excluído Se o nome não for encontrado, exibir mensagem de erro alterar(): alterar o de um contato com base no nome Exibir mensagem de confirmação Se o nome não for encontrado, exibir mensagem de erro consultar(): consultar um registro com base no nome Se o nome não for encontrado, exibir mensagem de erro relatorio(): exibir a lista de contatos registrados
26 Listas Métodos da classe LinkedList E getfirst( ): retorna o primeiro elemento E getlast( ): retorna o último elemento E removefirst( ): remove o primeiro elemento E removelast( ): remove o último elemento void addfirst(e e): insere elemento no início void addlast(e e): insere elemento no final boolean removefirstoccurrence(object o): remove a primeira ocorrência do objeto especificado boolean removelastoccurrence(object o): remove a última ocorrência do objeto especificado Iterator<E> descendingiterator( ): retorna um iterator para navegar do final para o início da lista
27 Listas Código 21.5 ExemploLinkedList.java Atributo: lista de contatos incluir(): permitir a escolha do local de inclusão (Início ou Final) excluir(): permitir a escolha do local da exclusão Se a lista estiver vazia, exibir mensagem de erro consultar(): permitir a escolha do local da consulta Se a lista estiver vazia, exibir mensagem de erro relatorio(): exibir a lista de contatos na ordem inversa Utilizar um iterator descendente para recuperar elementos
28 java.util.stack Pilhas Disponível desde o JSE 1.0 Derivada de java.util.vector Sincronizada = menos eficiência Estrutura poluída: métodos herdados java.util.linkedlist Disponível desde o JSE 1.2 Não sincronizada = mais eficiência Métodos uniformes
29 Pilhas Código 21.6 ExemploPilha.java Atributo: pilha de textos main() Capte qualquer número de textos e insiraos na pilha (push) Percorra a pilha, recupere e remova todos os seus elementos (pop) Exiba uma mensagem com todos os textos recuperados ExemploPilha pilha : LinkedList<String> + main (String args[])
30 Filas Código 21.7 ExemploFila.java Atributo: fila de textos main() Capte qualquer número de textos e insiraos na fila (add) Percorra a fila, recupere e remova todos os seus elementos (remove) Exiba uma mensagem com todos os textos recuperados ExemploFila fila : LinkedList<String> + main (String args[])
31 Filas Métodos da interface java.util.queue boolean add(e e): inclui elemento no final da fila boolean offer(e e): inclui elemento no final da fila E remove( ): remove elemento do início da fila E pool( ): remove elemento do início da fila E element( ): recupera primeiro elemento E peek( ): recupera primeiro elemento Resultado na falha dos métodos Lançam exceções: add( ), remove( ) e element( ) Retornam valor especial: offer( ), pool( ) e peek( )
32 Classe java.util.priorityqueue Filas Representa uma fila de prioridade Elementos ordenados de acordo com um critério Determinação do critério de ordenação Opção 1: objetos realizam a interface Comparable O método compareto( ) é utilizado Opção 2: uso de um comparador Comparador informado ao construtor da fila O método compare( ) é utilizado
33 Exemplo de fila de prioridade Fila de pacientes Critérios de ordenação: Filas Primário: gravidade do estado de saúde Secundário: ordem de chegada (número da ficha) gravidade * + + MINIMA PEQUENA MEDIA ALTA ALTISSIMA indicador descricao <<Enum>> Gravidade : EnumConstant : EnumConstant : EnumConstant : EnumConstant : EnumConstant : int : String = 1,"Mínima" = 2,"Pequena" = 3,"Média" = 4,"Alta" = 5,"Altíssima" Gravidade (int indicador, String descricao) getindicador () getdescricao () : int : String ficha nome gravidade Paciente : int : String : Gravidade setficha (int ficha) setnome (String nome) setgravidade (Gravidade gravidade) tostring () compareto (Paciente outro) ExemploFilaPrioridade fila : Queue<Paciente> + main (String args[]) : String : int
34 Código 21.8 Gravidade.java Filas Enumeração utilizada para classificar a gravidade do estado de saúde dos pacientes. Código 21.9 Paciente.java Representa o registro de chegada de cada paciente. Atributos: ficha: número que identifica a ordem de chegada nome: nome completo do paciente gravidade: a gravidade de seu estado de saúde Métodos: tostring( ): Ficha nº <ficha>: <nome> (Gravidade <descrição>) compareto( ): define os critérios de ordenação (gravidade/chegada)
35 Filas Código ExemploFilaPrioridade.java Permita o registro de qualquer quantidade de pacientes Solicite o nome e a prioridade como nos diálogos abaixo Utilize um contador para gerar o número da ficha Ao final, recupere e remova todos os elementos da fila Exiba uma mensagem com todos estes elementos
36 Conceito Conjuntos Coleção que não pode ter duplicatas Abstração dos conjuntos matemáticos API <E> Collection <E> Set HashSet<E> SortedSet <E> NavigableSet <E> TreeSet<E>
37 Conjuntos Código ExemploHashSet.java Crie o conjunto como uma instância da classe HashSet Permita a inclusão de qualquer quantidade de itens de compra Experimente inserir itens repetidos Ao final, liste todos os itens gravados (utilize um laço foreach) ExemploHashSet conjunto : Set<String> + main (String args[])
38 Conjuntos Código ExemploTreeSet.java Crie o conjunto como uma instância da classe TreeSet Permita a inclusão de qualquer quantidade de itens de compra Experimente inserir itens repetidos Ao final, liste todos os itens gravados (utilize um laço foreach) ExemploTreeSet conjunto : Set<String> + main (String args[])
39 Conceito Mapas Coleção que vincula chaves a valores Chaves não podem ser duplicadas API Map <K,V> AbstractMap<K,V> {abstract} <K,V> SortedMap NavigableMap <K,V> TreeMap<K,V> HashMap<K,V>
40 Mapas Métodos da interface java.util.map V get(object key): retorna o valor associado à chave indicada V put(k key, V value): adiciona um par de chave/valor Set<K> keyset( ): retorna o conjunto de chaves do mapa V remove(object key): remove a entrada correspondente à chave int size( ): retorna o número de elementos
41 Mapas Código ExemploHashMap.java Crie o mapa como uma instância da classe HashMap Permita a inclusão de qualquer quantidade de siglas e dos significados correspondentes Percorra o mapa e recupere todas as siglas e significados Crie um conjunto (TreeSet) com as chaves do mapa Utilize um laço foreach para percorrer o conjunto ExemploHashMap mapa : Map<String, String> + main (String args[])
42 Mapas Código ExemploTreeMap.java Crie o mapa como uma instância da classe TreeMap Permita a inclusão de qualquer quantidade de siglas e dos significados correspondentes Percorra o mapa e recupere todas as siglas e significados Crie um conjunto (Set) com as chaves do mapa Utilize um laço foreach para percorrer o conjunto ExemploTreeMap mapa : Map<String, String> + main (String args[])
43 Ordenação de Listas Métodos estáticos da classe java.util.collections <T extends Comparable<? super T>> void sort(list<t> list) <T> void sort(list<t> list, Comparator<? super T> c) <T> Comparator<T> reverseorder( ) void reverse(list<?> list) void shuffle(list<?> list)
44 Ordenação de Listas Código OrdenacaoSimples.java Crie uma nova lista (LinkedList) Permita a inclusão de qualquer quantidade de textos Ordene os elementos após a inclusão de todos Recupere e apresente a lista de todos os elementos da lista OrdenacaoSimples lista : List<String> + main (String args[])
45 Ordenação de Listas Código OrdenacaoInversa.java Crie uma nova lista (LinkedList) Permita a inclusão de qualquer quantidade de textos Ordene os elementos após a inclusão de todos Ordem alfabética descendente Use um comparador Recupere e apresente a lista de todos os elementos da lista OrdenacaoInversa lista : List<String> + main (String args[])
46 Ordenação de Listas Comparable <T> FunNomeComparator + compare (Funcionario func1, Funcionario func2) : int matricula nome salario Funcionario : int : String : double tostring () compareto (Funcionario outro)... : String : int... OrdenacaoPersonalizada lista : List<Funcionario> + main (String args[]) incluir () ordenar () inverter () desordenar () exibir () Comparator (util) <T> FunSalarioComparator + compare (Funcionario func1, Funcionario func2) : int
47 Ordenação de Listas Código Funcionario.java tostring( ): Funcionário <matrícula>: <nome> <salário> compareto( ): ordenação padrão (pela matrícula) Código FunNomeComparator.java compare( ): ordenação pelo nome Código FunSalarioComparator.java compare( ): ordenação pelo salário
48 Ordenação de Listas Código OrdenacaoPersonalizada.java Instanciação do atributo: LinkedList main(): exibir opções e invocar métodos correspondentes incluir( ): permitir a inclusão de qualquer número de registros ordenar( ): ordenar com base em opção do usuário inverter( ): inverter a ordem dos registros desordenar( ): reorganizar aleatóriamente os registros exibir( ): apresentar a lista de funcionários registrados
49 Pesquisa Binária em Listas Métodos estáticos da classe java.util.collections <T> int binarysearch(list<? extends Comparable<? super T>> list, T key) O retorno é a posição da chave (ou 1) Os elementos devem realizar a interface comparable Os elementos devem estar ordenados pela ordem natural <T> int binarysearch(list<? extends T> list, T key, Comparator<? super T> c) O retorno é a posição da chave (ou 1) Os elementos devem estar ordenados de acordo com o comparador
50 Pesquisa Binária em Listas Código ExemploPesquisaBinaria.java Instanciação do atributo: LinkedList main(): exibir opções e invocar métodos correspondentes incluir( ): permitir a inclusão de qualquer número de registros pesquisar( ): exibir as opções de pesquisa e invocar os métodos correspondentes Métodos: pesquisarpelamatricula( ), pesquisarpelonome( ) e pesquisarpelosalario( ). Se a chave for localizada, apresentar a posição em que se encontra Se a chave não for localizada, exibir uma mensagem de erro exibir( ): apresentar a lista de funcionários registrados ExemploPesquisaBinaria lista : List<Funcionario> + main (String args[]) incluir () pesquisar () pesquisarpelamatricula () pesquisarpelonome () pesquisarpelosalario () exibir ()
51 Estatísticas de Coleções Métodos estáticos da classe java.util.collections min(): recupera o menor valor de uma coleção max( ): recupera o maior valor de uma coleção frequency( ): frequencia de um objeto dado na coleção
52 Estatísticas de Coleções Código ExemploEstatisticas.java Instanciação do atributo: LinkedList main(): exibir opções e invocar métodos correspondentes incluir( ): permitir a inclusão de qualquer número de registros verlimites( ): exibir o menor e o maior salário verfrequencias( ): exibir os diferentes salários recebidos pelos funcionários cadastrados e a quantidade de funcionários que recebe cada um deles exibir( ): apresentar a lista de funcionários registrados ExemploEstatisticas lista : List<Funcionario> + main (String args[]) incluir () verlimites () verfrequencias () exibir ()
53 Manipulação de Vetores Métodos estáticos da classe java.util.arrays copyof(): cria uma cópia de um vetor com nova capacidade sort( ): ordena os elementos de um vetor binarysearch( ): realiza uma pesquisa binária Algumas implementações destes métodos public static <T> T[] copyof(t[] original, int newlength) public static void sort(object[] a) public static <T> void sort(t[] a, Comparator<? super T> c) public static int binarysearch(object[] a, Object key) public static <T> int binarysearch(t[] a, T key, Comparator<? super T> c)
54 Manipulação de Vetores Código ExemploVetor.java Inicialmente, instancie o vetor com apenas 2 posições Permita que o usuário grave quantos textos desejar neste vetor Dobre a capacidade do vetor sempre que ela for ultrapassada Após as inclusões, elimine as posições desocupadas Ordene os textos informados Exiba uma mensagem com o conteúdo do vetor Inicie um procedimento para a realização de pesquisas Se o texto for encontrado, indique a sua posição no vetor Caso contrário, indique que ele não foi encontrado ExemploVetor textos : String[] + main (String args[])
55 Exercício 1 Crie uma classe, chamada Aluno e dois comparadores para ela, chamados AlunoNomeComparator e AlunoNascimentoComparator. Procure implementar estas três classes em conformidade com as especificações contidas no diagrama de classes que é apresentado pela figura abaixo.
56 Exercício 1 Os métodos de escrita dos três atributos da classe Aluno devem validar os dados recebidos antes de graválos. Se um dado inválido for recebido por algum destes métodos, ele deve disparar uma exceção com uma mensagem que indique a regra que foi violada. Defina você mesmo as regras que serão aplicadas para validar os dados relativos a cada um dos atributos. Implemente o método equals( ) da classe Aluno de forma que duas instâncias desta classe sejam consideradas iguais sempre que tiverem o mesmo valor no atributo que representa a matrícula do aluno. Este atributo também deve ser utilizado na implementação do método hashcode( ) de tal forma que dois alunos com a mesma matrícula também gerem o mesmo código de hash.
57 Exercício 1 O método compareto( ) deve ser implementado pela classe Aluno em função de ter se comprometido a realizar a interface Comparable. Este método define a ordenação natural das instâncias desta classe. Implemente este método de forma que ele ordene os objetos desta classe com base na matrícula dos alunos. As classes AlunoNomeComparator e AlunoNascimentoComparator, por sua vez, devem ser implementadas de tal modo que possam ser empregadas para realizar a ordenação destes objetos utilizando os atributos nome e nascimento, respectivamente.
58 Exercício 2 Crie um novo aplicativo, chamado CadastroAluno, que permita realizar o cadastro de alunos. O primeiro diálogo produzido por este aplicativo deve ter as opções que permitam o acesso a todas as operações suportadas por ele. A figura abaixo ilustra qual deve ser a aparência deste diálogo. A operação de inclusão consiste em solicitar a matrícula, o nome e a data de nascimento de um aluno, gravar todos estes dados em uma instância da classe Aluno e adicionar esta instância a uma coleção. Se um dos dados informados for inválido, o aplicativo deve exibir uma mensagem de erro e solicitálo novamente. Se já houver um aluno cadastrado com a matrícula informada, o aplicativo deve exibir uma mensagem de erro e encerrar a operação.
59 Exercício 2 A operação de exclusão consiste em solicitar a matrícula de um aluno e excluir o objeto correspondente da coleção. Se a coleção estiver vazia, uma mensagem de erro deve ser exibida e esta operação deve ser encerrada. Se a matrícula informada não for válida, uma mensagem de erro deve ser exibida e ela deve ser solicitada novamente. Se não houver nenhum aluno cadastrado com a matrícula informada, deve ser exibida uma mensagem de erro e a operação deve ser encerrada. A operação de alteração consiste em solicitar a matrícula de um aluno, em localizar a posição onde seu cadastro foi gravado na coleção e permitir que seu nome e sua data de nascimento sejam atualizados. Se não houver nenhum cadastro gravado, o aplicativo deve exibir uma mensagem de erro e encerrar a operação. Se um dado inválido for informado, o aplicativo deve exibir uma mensagem de erro e solicitálo novamente. Se não houver nenhum aluno cadastrado com a matrícula informada, uma mensagem de erro deve ser exibida e a operação deve ser encerrada.
60 Exercício 2 A operação de consulta consiste em solicitar a matrícula de um aluno, em recuperar seu nome e data de nascimento e apresentálos através de uma mensagem. Se não houver nenhum cadastro gravado, o aplicativo deve exibir uma mensagem de erro e encerrar a operação. Se a matrícula informada for inválida, uma mensagem de erro deve ser exibida e ela deve ser solicitada novamente. Se não houver nenhum aluno cadastrado com a matrícula informada, uma mensagem de erro deve ser exibida e a operação deve ser encerrada. A operação de ordenação consiste em permitir que se escolha uma opção de ordenação para os cadastros de alunos que se encontram gravados na coleção. Se não houver nenhum cadastro gravado, o aplicativo deve exibir uma mensagem de erro e encerrar a operação. Devese permitir a escolha de uma de três opções: ordenálos pela matrícula, pelo nome ou pela data de nascimento.
61 Exercício 2 O relatório deve apresentar os dados de todos os alunos cadastrados através de uma mensagem gráfica. Se não houver nenhum cadastro gravado, uma mensagem de erro deve ser exibida e a operação deve ser encerrada.
62 Exercício 3 Crie um novo aplicativo, chamado SorteioNumeros, que realize o sorteio de dez números inteiros. Os números sorteados devem ser exibidos através de uma mensagem gráfica similar à que é ilustrada pela figura abaixo. Os números sorteados não podem ser inferiores a 101 e não podem ser superiores a 200. Não deve ser permitido que um mesmo número seja incluído duas vezes no resultado do sorteio. Estes números devem ser apresentados em ordem crescente. Armazene os números sorteados em um tipo de coleção que facilite a realização desta operação.
63 Exercício 4 Crie um novo aplicativo, chamado ValidadorDelimitadores, que capte uma expressão qualquer e indique se todos os delimitadores abertos foram fechados adequadamente. A figura abaixo ilustra o seu funcionamento.
64 Exercício 4 A expressão deverá ser informada através de um diálogo gráfico. Somente três tipos de delimitadores devem ser analisados por este aplicativo: chaves, colchetes e parênteses. Qualquer outro caractere deve ser ignorado para fins de avaliação da expressão. Utilize uma pilha de caracteres para implementar a solução para o problema proposto. Adicione cada delimitador de abertura que for encontrado a esta pilha. Sempre que um delimitador de fechamento for encontrado na expressão, verifique se o delimitador de abertura correspondente se encontra no topo da pilha. Caso eles não coincidam, registre o erro. Se um delimitador de fechamento for encontrado quando a pilha estiver vazia ou se não houver nenhum delimitador de fechamento para um delimitador de abertura, registre o erro.
65 Contato Com o autor: Rui Rossi dos Santos livros@ruirossi.pro.br Web Site: Com a editora: Editora NovaTerra Telefone: (21) Web Site:
Coleções Avançadas. Programação Orientada a Objetos Java. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior
Coleções Avançadas Programação Orientada a Objetos Java Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior Objetivos Aprender como o conceito de coleção pode ser expresso de forma genérica Examinar
Leia maisBSI UFRPE Prof. Gustavo Callou gcallou@gmail.com
BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com Coleções List Set Map Classes e interfaces do pacote java.util que representam listas, conjuntos e mapas. Solução flexível para armazenar objetos. Quantidade
Leia maisColeções. Page 1. Coleções. Prof. Anderson Augustinho Uniandrade
Page 1 podem ser comparadas com arrays, visto que também apresentam a capacidade de armazenar referências para vários objetos. Entretanto, as coleções apresentam uma gama de funcionalidades bem maior do
Leia maisLaboratório de Programação. Aula 13 Java 5COP088. Aula 13 Genéricos e Conjuntos Java Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr barbon@uel.
5COP088 Laboratório de Programação Aula 13 Genéricos e Conjuntos Java Prof. Dr. Sylvio Barbon Junior 1 Sumário: 1) Métodos hashcode(), equals() e tostring(); 2) Conjuntos; 3) Genéricos; 4) Resumo. 2 1)
Leia maisColeções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS
Coleções Conceitos e Utilização Básica c Professores de ALPRO I Faculdade de Informática PUCRS 05/2012 ALPRO I (FACIN) Coleções: Básico 05/2012 1 / 41 Nota Este material não pode ser reproduzido ou utilizado
Leia maisCapítulo 22. Associações entre Classes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 22 Associações entre Classes Objetivos do Capítulo Indicar os diferentes aspectos de um relacionamento entre classes que podem ser expressos através de uma associação. Descrever o significado
Leia maisColeções. João Paulo Q. dos Santos
Coleções João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre coleções; Tipos de coleções; Como são classificadas; Exemplos. 04/02/14 2 Coleções Classes e interfaces do pacote java.util
Leia maisAPI e Coleções Java. Sérgio Luiz Ruivace Cerqueira
API e Coleções Java Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java API Introdução API Endereço http://download.oracle.com/javase/6/docs/api/ API - Descrição API - Resumo API - Detalhes Coleções
Leia maisCapítulo 13. Encapsulamento. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 13 Encapsulamento Objetivos do Capítulo Indicar a importância do mecanismo de encapsulamento no contexto do desenvolvimento de software utilizando a programação orientada a objetos. Apresentar
Leia maisCapítulo 9. Vetores e Matrizes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 9 Vetores e Matrizes Objetivos do Capítulo Apresentar os dois tipos fundamentais de estruturas de dados estáticas disponíveis no Java: os vetores e as matrizes. Indicar como os vetores podem ser
Leia maisJava Coleções. Rodrigo C. de Azevedo
Java Coleções Rodrigo C. de Azevedo OMG Certified UML Professional Fundamental OMG Certified UML Professional Intermediate CompTIA Project+ Sun Certified Associate for Java Platform Sun Certified Programmer
Leia maisCollections. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa
Collections Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Coleções em Java As coleções agrupam vários
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Classes abstratas São classes que não podem ser instanciadas, porque representam
Leia maisRafael Santos. Instituto Nacional de Pesquisas Espaciais www.lac.inpe.br/ rafael.santos. Rafael Santos - www.lac.inpe.br/ rafael.
Coleções e Aplicações Rafael Santos Instituto Nacional de Pesquisas Espaciais www.lac.inpe.br/ rafael.santos Rafael Santos - www.lac.inpe.br/ rafael.santos 1 / 54 Tópicos 1 Sobre... 2 Revisão de Java 3
Leia maisCapítulo 11. Conceitos de Orientação a Objetos. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 11 Conceitos de Orientação a Objetos Objetivos do Capítulo Introduzir os conceitos fundamentais da Programação Orientada a Objetos. Apresentar o significado dos objetos e das classes no contexto
Leia maisCapítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo
Leia maisJava Util Collections - Interfaces Interfaces definidas
Java Util Collections - Interfaces Interfaces definidas 245 Collection Raiz da hierarquia Grupo mais genérico de elementos Não garante nas implementações Duplicatas Ordenação Não possui nenhuma implementação
Leia maisProgramação Orientada a Objetos. Encapsulamento
Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Introdução GUI Classes abstratas São classes que não podem ser instanciadas,
Leia mais5 Caso de estudo O cartão fidelidade
5 Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante
Leia maisTécnicas de Programação Avançada TCC- 00.174 Prof.: Anselmo Montenegro www.ic.uff.br/~anselmo anselmo@ic.uff.br
Técnicas de Programação Avançada TCC- 00.174 Prof.: Anselmo Montenegro www.ic.uff.br/~anselmo anselmo@ic.uff.br Conteúdo: Coleções Material elaborado com contribuição do Professor Luiz André Coleções Uma
Leia maisLógica de Programação
Lógica de Programação Unidade 20 ArrayList: Operações de Busca Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 TIPOS DE BUSCAS... 3 BUSCA ESPECÍFICA... 3 BUSCA ABRANGENTE... 3 PROCEDIMENTO DE BUSCA...
Leia maisCurso Java Starter. www.t2ti.com 1
1 Apresentação O Curso Java Starter foi projetado com o objetivo de ajudar àquelas pessoas que têm uma base de lógica de programação e desejam entrar no mercado de trabalho sabendo Java, A estrutura do
Leia maisSUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA... 1
SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA... 1 A Origem... 2 O Caminho Para a Aprendizagem... 4 Java Como Plataforma... 6 Finalidade... 9 Características... 11 Perspectivas... 13 Exercícios... 14 CAPÍTULO
Leia maisProgramação Java. em Ambiente Distribuído. Ênfase no Mapeamento Objeto-Relacional com JPA, EJB e Hibernate. Douglas Rocha Mendes.
Programação Java em Ambiente Distribuído Ênfase no Mapeamento Objeto-Relacional com JPA, EJB e Hibernate Douglas Rocha Mendes Novatec Copyright 2011 da Novatec Editora Ltda. Todos os direitos reservados
Leia maisCapítulo 19. Algoritmos de Ordenação e de Pesquisa. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 19 Algoritmos de Ordenação e de Pesquisa Objetivos do Capítulo Conceituar ordenação e pesquisa. Apresentar os algoritmos de ordenação por troca, por seleção e por inserção. Explorar os algoritmos
Leia maisDesafios de Programação TCC-00.254 Turma A-1
Desafios de Programação TCC-00.254 Turma A-1 Conteúdo Estruturas de Dados Elementares Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2015.1/tcc-00.254
Leia maisINF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Gestão Hoteleira 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e
Leia maisAULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br
AULA 12 CLASSES DA API JAVA Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br CLASSES DA API JAVA A maioria dos programas de computador que resolvem problemas do
Leia maisTipos de Dado Abstrato: Listas, Filas e Pilhas
Tipos de Dado Abstrato: Listas, Filas e Pilhas Estruturas de Dados Prof. Vilson Heck Junior Introdução Tradicionalmente conhecidos como Tipos de Dado Abstrato, são algumas Estruturas de Dados básicas e
Leia maisCapítulo 7. Estruturas de Decisão. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 7 Estruturas de Decisão Objetivos do Capítulo Apresentar as estruturas de decisão disponíveis no Java e sua aplicabilidade para promover desvios no fluxo de execução dos aplicativos. Indicar a
Leia mais01/06/2016 INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS. Programa Capítulo 15. Coleções. A Interface List. A Classe LinkedList. Exercício.
INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 15 Coleções A Interface List A Classe LinkedList Exercício A Interface
Leia maisEspecificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
Leia maisRUI ROSSI DOS SANTOS PROGRAMAÇÃO DE COMPUTADORES EM. Java
RUI ROSSI DOS SANTOS PROGRAMAÇÃO DE COMPUTADORES EM Java 2ª Edição n Sumário VII Sumário CAPÍTULO 1 Introdução ao Java... 1 A Origem... 2 O Caminho Para a Aprendizagem... 4 Java como Plataforma... 6 Finalidade...
Leia maisGuia de Fatores de Qualidade de OO e Java
Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.
Leia maisTrabalho 3: Agenda de Tarefas
INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma
Leia maisruirossi@ruirossi.pro.br
Tratamento de Exceções Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 o Exceção: condição anormal Introdução o Causas: Falhas na implementação Falhas na operação o
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
Java Collections Framework (JCF) Uma coleção (collection) é um objeto que agrupa vários elementos. A JCF consiste numa arquitetura para representação e manipulação de coleções. Contém: - Um conjunto de
Leia maisOrientação a Objetos com Java
Everton Coimbra de Araújo Orientação a Objetos com Java Simples, Fácil e Eficiente Visual Books Sumário Prefácio... 11 Introdução... 13 1 Introdução à Orientação a Objetos... 17 1.1 Conceitualização...
Leia maisTécnicas de Programação II
Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.
Leia maisPCC104 - Projeto e Análise de Algoritmos
PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 31 de outubro de 2017 Marco Antonio
Leia mais2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II. public double getgeracaoatual() {return geracaoatual;}
2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II Exercício : Construtores são métodos especiais sem tipo de retorno (nem mesmo void) e de mesmo nome que a classe que são invocados quando da criação
Leia maisBusca. Pesquisa sequencial
Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um
Leia maisDesenvolvimento e Projeto de Aplicações Web
Desenvolvimento e Projeto de Aplicações Web cecafac@gmail.com Coleções Conteúdo 1 Introdução Desde a versão 1.2 do JDK, a plataforma J2SE inclui um framework de coleções (Collections) Uma coleção é um
Leia maisParadigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33
PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface
Leia maisLista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Leia maisObjetivos do Capítulo
Capítulo 33 Arquivos e Fluxos de Dados Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Objetivos do Capítulo Analisar os conceitos de fluxo de entrada e de fluxo de saída de
Leia mais4 O Workflow e a Máquina de Regras
4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu
Leia maisManual de Utilização
Manual de Utilização Versão 1.0 18/01/2013 Sempre consulte por atualizações deste manual em nossa página. O Cotação Web está em constante desenvolvimento, podendo ter novas funcionalidades adicionadas
Leia maisBUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES
BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES ALGORITMOS DE BUSCA EM LISTAS COM ALOCAÇÃO SEQÜENCIAL Busca em Listas Lineares A operação de busca é
Leia maisManual da Turma Virtual: MATERIAIS. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:
Manual da Turma Virtual: MATERIAIS Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo: MENU TURMA VIRTUAL MENU MATERIAIS CONTEÚDO/PÁGINA WEB Esta operação possibilita que
Leia mais7 RTTI e Interfaces. Desenvolvimento OO com Java. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.
Desenvolvimento OO com Java 7 RTTI e Interfaces Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do
Leia maisProgramação Orientada a Objetos em java. Polimorfismo
Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa
Leia maisEstruturas de Dados Pilhas, Filas e Deques
Estruturas de Dados Pilhas, Filas e Deques Prof. Eduardo Alchieri Estruturas de Dados Pilhas Pilhas Lista LIFO (Last In, First Out) Os elementos são colocados na estrutura (pilha) e retirados em ordem
Leia maisTipos agregados. Tipos estruturados
Tipos agregados ou Tipos estruturados permitem a implementação de agrupamentos de dados. exemplos: lista de valores que representam as taxas mensais de inflação durante um ano; ficha de cadastro de um
Leia maisImplementação de Classe e Auto-Relacionamento em Java
UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Implementação de Classe e Auto-Relacionamento em Java 1)Introdução Um modelo de Diagrama de Classes representa a estrutura definida
Leia maisARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Leia maisTabela de símbolos: tabelas de espalhamento
Tabela de símbolos: tabelas de espalhamento Marcelo K. Albertini 14 de Janeiro de 2014 2/28 Resumo de complexidades Análises para operação efetuada após N inserções pior caso caso médio keys chave get
Leia maisFBV - Linguagem de Programação II. Um pouco sobre Java
FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base
Leia maisProgramação Orientada a Objetos
Collections Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 08 Arranjos, Listas, Filas, Pilhas, Conjuntos e Mapas 1 Introdução Java fornece implementação de Estruturas de Dados recorrentemente utilizadas.
Leia maisObjetos Implícitos. Conceito. Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP.
Slide 1 Conceito Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP. Instruções de criação inseridas no método _jspservice( ). Slide 2 Identificação e tipo Identificação Tipo application
Leia maisNovell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR
Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,
Leia maisJDBC Java Database Connectivity
5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes
Leia maisExercícios de Revisão Java Básico
Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1
Leia maisINF1007 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 15
INF1007 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 15 1. Um número racional é expresso por dois inteiros: um numerador e um denominador (este último diferente de zero!). Implemente um TAD para representar números
Leia maisLivro Caixa. www.controlenanet.com.br. Copyright 2015 - ControleNaNet
www.controlenanet.com.br Copyright 2015 - ControleNaNet Conteúdo Tela Principal... 3 Como imprimir?... 4 As Listagens nas Telas... 7 Clientes... 8 Consulta... 9 Inclusão... 11 Alteração... 13 Exclusão...
Leia maisSlide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education
Java Como Programar, 8/E Slide 1 Slide 2 Slide 3 Métodos genéricos e classes genéricas (e interfaces) permitem especificar, com uma única declaração de método, um conjunto de métodos relacionados ou, com
Leia maisModelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes
Modelagem e Implementação de Aquário de Peixes- por Jorge Fernandes - Página 1 Modelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes Jorge Fernandes Natal, Agosto de
Leia maisAgendamento para Importação de Notas Fiscais
LIBERAÇÃO DE ATUALIZAÇÃO CORDILHEIRA VERSÃO 2 (Orientamos aos clientes que utilizam banco de dados SQL, para efetuarem a atualização preferencialmente após o encerramento das atividades do dia, acessando
Leia maisAlberto Costa Neto DComp - UFS. Coleções
Alberto Costa Neto DComp - UFS Coleções [ Conteúdo ] Introdução Interfaces e Classes para Coleções Coleções Especiais Classes de Coleções Históricas Suporte Algorítmico Questões de Utilização Novas coleções
Leia maisManual do Painel Administrativo
Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...
Leia maisColeções. Prof. Marcelo Roberto Zorzan
Coleções Prof. Marcelo Roberto Zorzan Coleções Aula de Hoje Introdução Coleções podem representar estruturas de dados complexas de forma transparente para o programador. Exemplos: Músicas favoritas armazenadas
Leia mais15-09-2009. Membros de classe e de instância. PARTE III: Java e OO - detalhes. Exemplo 1: método. Exercício. Exemplo 1 corrigido
PARTE III: Java e OO - detalhes Membros de classe e instâncias Pacotes Visibilidade Classes aninhadas Membros de classe e de instância De classe Static Método não necessita de objeto para ser chamado.
Leia maisProgramação Concorrente em java - Exercícios Práticos Abril 2004
Programação Concorrente em java - Exercícios Práticos Abril 2004 1. Introdução As threads correspondem a linhas de controlo independentes no âmbito de um mesmo processo. No caso da linguagem JAVA, é precisamente
Leia maisJava Básico. Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp
Java Básico Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp Classes Abstratas construção de uma classe abstrata construção de classes derivadas Classes e Herança Uma classe define
Leia maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisÁrvores Binárias de Busca
Árvores Binárias de Busca Uma Árvore Binária de Busca T (ABB) ou Árvore Binária de Pesquisa é tal que ou T = 0 e a árvore é dita vazia ou seu nó contém uma chave e: 1. Todas as chaves da sub-árvore esquerda
Leia maisT U T O R I A I S WEB OF SCIENCE TUTORIAL. Biblioteca da Escola de Engenharia da UFRGS. WEB OF SCIENCE - Tutorial
T U T O R I A I S WEB OF SCIENCE TUTORIAL Biblioteca da Escola de Engenharia da UFRGS WEB OF SCIENCE - Tutorial O que é? O Web of Science é uma base de dados que disponibiliza acesso a mais de 9.200 títulos
Leia maisAlgoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br
(Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução
Leia maisManual Operacional SIGA
SMS - ATTI Maio -2013 Conteúdo Sumário... 2 PPD -IPD... 3 Adicionar Paciente... 4 Laudo Médico... 6 Avaliação do Enfermeiro... 11 Visita Domiciliar... 14 Dados do Paciente no Programa... 16 Histórico do
Leia maisIFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Leia maisAlgoritmos e Estruturas de Dados II. Trabalho Prático 2
Algoritmos e Estruturas de Dados II Entrega: 24/09/08 Devolução: 15/10/08 Trabalho individual Prof. Jussara Marques de Almeida Trabalho Prático 2 Você foi contratado pela XOL X Online para desenvolver
Leia maisDesenvolvimento de um Simulador de Gerenciamento de Memória
Desenvolvimento de um Simulador de Gerenciamento de Memória Ricardo Mendes do Nascimento. Ciência da Computação Universidade Regional Integrada do Alto Uruguai e das Missões (URI) Santo Ângelo RS Brasil
Leia maisCONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS
MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL
Leia maisPag: 1/20. SGI Manual. Controle de Padrões
Pag: 1/20 SGI Manual Controle de Padrões Pag: 2/20 Sumário 1 Introdução...3 2 Cadastros Básicos...5 2.1 Grandezas...5 2.2 Instrumentos (Classificação de Padrões)...6 3 Padrões...9 3.1 Padrão Interno...9
Leia maisPesquisa em Memória Primária. Algoritmos e Estruturas de Dados II
Pesquisa em Memória Primária Algoritmos e Estruturas de Dados II Pesquisa em Memória Primária Pesquisa: Recuperação de informação em um grande volume de dados Informação é dividida em registros e cada
Leia maisReuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Leia maisMODULO DE GESTÃO MANUTENÇÃO DE MATRÍCULA. O módulo de Gestão tem por objetivo gerenciar as atividades que ocorrem durante um ano letivo.
MANUTENÇÃO DE MATRÍCULA 1. Informações Gerais. O módulo de Gestão tem por objetivo gerenciar as atividades que ocorrem durante um ano letivo. O item do menu Manutenção de Matrícula tem por objetivo manter
Leia maisVendas. Manual do Usuário. Copyright 2014 - ControleNaNet
Manual do Usuário Copyright 2014 - ControleNaNet Conteúdo A Ficha de Vendas...3 Os Recibos...6 Como imprimir?...7 As Listagens...9 Clientes... 10 Consulta... 11 Inclusão... 13 Alteração... 14 Exclusão...
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DE RORAIMA DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO SIGRH - FREQUÊNCIA
SIGRH - FREQUÊNCIA Boa Vista RR, 21 novembro de 2014. É o módulo do Sistema Integrado de Gestão de Recursos Humanos (SIGRH) que tem por objetivo permitir o gerenciamento das informações relacionadas ao
Leia maisRevisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL
Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Características do Software Urano Integra 2.2 Data: 12/05/2014
Leia maisTópicos em Engenharia de Computação
Tópicos em Engenharia de Computação Introdução / Revisão UML e POO (JAVA) Prof. Ivan Prof. Zagari UML Linguagem Unificada. Não é metodologia, processo ou método. Versão atual 2.0 3 categorias de Diagramas
Leia maisIntrodução aos cálculos de datas
Page 1 of 7 Windows SharePoint Services Introdução aos cálculos de datas Aplica-se a: Microsoft Office SharePoint Server 2007 Ocultar tudo Você pode usar fórmulas e funções em listas ou bibliotecas para
Leia maisTHREADS EM JAVA. George Gomes Cabral
THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores
Leia maisWindows Explorer. Prof. Valdir
Do Inglês Explorador de Janelas, o é o programa para gerenciamento de discos, pastas e arquivos no ambiente Windows. É utilizado para a cópia, exclusão, organização e movimentação de arquivos além de criação,
Leia mais3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio
32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio
Leia mais2ª Lista de Exercícios
Universidade Federal de Minas Gerais Departamento de Ciência da Computação Algoritmos e Estruturas de Dados II (Turmas M, N, W, F) 1º Semestre de 2012 Profs. Camilo Oliveira, Gisele Pappa, Ítalo Cunha,
Leia maisOlimpíada Brasileira de Robótica. Manual de Inscrição. Sistema OLIMPO Instruções
Olimpíada Brasileira de Robótica Manual de Inscrição Sistema OLIMPO Instruções Versão 1.1 Abril 2013 OLIMPO Sistema de Gerenciamento de Olimpíadas e Eventos Científicos Olimpíada Brasileira de Robótica
Leia mais