BrazilUtils 0.2 - Features Tutorial - Interval

Esta é uma classe genérica que serve para difinir intervalos e operações com intervalos. O mais comum será usar com datas e numeros, mas a classe aceita qualquer objecto que implementa Comparable ou exista um Comparator para o comparar.

Podemos saber se o intervalo contém um outro objecto
O resultado será sim , se o objecto fica entre o inicio e o fim do intervalo, ou é igual a algum deles.

Interval v = new Interval (new Integer(2), new Integer(5)); 
Interval w= new Interval (new Integer(9), new Integer(13)); 
Interval k = new Interval (new Integer(4), new Integer(11)); 

v.contains(new Integer(3)); // true
v.contains(new Integer(9)); // false

Podemos intersectar intervalos ou apenas saber se intersectam

Interval t = w.intersect(k); // resulta em [9,11]
Interval z = v.intersect(w); // resulta em [] intervalo vazio

boolean intersects = w.instersects(k);

podemos tabém fundir os intervalos

Interval m = v.merge(k); // resulta em [2,11]

podemos consultar se o intervalo é vazio

m.isEmpty();// false
z.isEmpty();// true

Esta é a utilização básica. Contudo Intervalos pode simplesmente para criar campos em beans como


public class Tarefa {
 
    Intervalo duracaoPrevista;

}