Difference between revisions of "Colecções de Objectos"

From Wiki**3

(Comparable vs. Comparator)
Line 11: Line 11:
 
A vantagem do uso da primeira está no menor número de classes. No entanto, a segunda, sem aumentar a complexidade de forma significativa (as classes de comparação são muito simples), contribui para a flexibilidade da aplicação nos aspectos relativos à comparação de objectos.
 
A vantagem do uso da primeira está no menor número de classes. No entanto, a segunda, sem aumentar a complexidade de forma significativa (as classes de comparação são muito simples), contribui para a flexibilidade da aplicação nos aspectos relativos à comparação de objectos.
  
* Ver exemplo: [[Classes Internas (Java)/Exercício 01: Interfaces java.lang.Comparable e java.util.Comparator]]
+
=== Exemplo ===
 +
* [[Classes Internas (Java)/Exercício 01: Interfaces java.lang.Comparable e java.util.Comparator]]
  
 
=== Ver Também ===
 
=== Ver Também ===
* http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Comparable.html
+
* http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html
* http://java.sun.com/j2se/1.5.0/docs/api/java/util/Comparator.html
+
* http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html
 
* [[Strategy Pattern (padrão de desenho)]]
 
* [[Strategy Pattern (padrão de desenho)]]
 +
 +
== Iterable and Iterator ==
 +
 +
=== Exemplo ===
 +
* [[Classes Internas (Java)/Gatos Iteráveis]]
 +
 +
=== Ver Também ===
 +
 +
* http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html
 +
* http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html
 +
  
 
[[category:Ensino]]
 
[[category:Ensino]]
 
[[category:PO]]
 
[[category:PO]]

Revision as of 21:57, 29 October 2013

Programação com Objectos
Introduction
Creation and Destruction
Inheritance & Composition
Abstraction & Polymorphism
Code Organization
Java Topics
Inner Classes
Enumerations
Data Structures
Exceptions
Input/Output
RTTI
Other Topics
JUnit Tests
UML Topics
Design Patterns
"Simple" Factory
Composite & Visitor
Command
Strategy & State
Template Method
Observer
Abstract Factory
Decorator & Adapter
Façade (aka Facade)

Organização de objectos em colecções. Colecções em Java: vectores primitivos e a hierarquia de colecções. Uso de tipos paramétricos (generics). Apresentação de interfaces de topo: Collection, Set, List. Exemplo com LinkedList. Iteradores. Exemplo de utilização de iteradores. A interface Iterable e o uso de foreach: iteração implícita. Apresentação e discussão de exemplos.

Classes utilitárias Collections e Arrays e o uso de algoritmos abstractos. Interfaces Comparable e Comparator. Discussão das diferenças. A interface Map. Apresentação e discussão de exemplos. Alguns aspectos da utilização de programação com classes e interfaces paramétricas.

Comparable vs. Comparator

No primeiro caso, são as instâncias da própria classe as responsáveis por saber comparar-se com outras (e, como só pode haver um método com uma determinada interface, isso significa que o uso da interface Comparable apenas permite um método de comparação). As classes que implementam Comparator, pelo contrário, permitem a definição de um número arbitrário de estratégias de comparação de instâncias das classes que comparam (um método de comparação por classe).

A vantagem do uso da primeira está no menor número de classes. No entanto, a segunda, sem aumentar a complexidade de forma significativa (as classes de comparação são muito simples), contribui para a flexibilidade da aplicação nos aspectos relativos à comparação de objectos.

Exemplo

Ver Também

Iterable and Iterator

Exemplo

Ver Também