Hello,

J'ai un petit cas qui me gène avec les générics, j'aimerais savoir s'il y a une solution autre que @SuppressWarnings("unchecked").

Voilà la classe :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class OrFilter<T> implements Filter<T> {
 
	/** The filters */
	private Filter<T>[] m_filters;
 
	/**
         * Builds a filter that must verify at least one of theses filters.
         *
         * @param filters The filters.
         */
	public OrFilter(Filter<T>... filters) {
		m_filters = filters;
	}
 
	// ...
 
}
Le générique dans le constructeur avec le varargs me cause un warning :
Citation Envoyé par warning
A generic array of Filter<PlTache> is created for a varargs parameter
quand je fais ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
		Filtrable<PlTache> filtrable = new Filtrable<PlTache>(tachesSource);
		filtrable.addFilter(
				new OrFilter<PlTache>(
						new TacheOverlapingIntervalFilter<PlTache>(iv),
						new TacheFlottanteFilter<PlTache>()));
N'ais-je pas d'autre choix que de passer mon varargs en Collection<T> ? Je trouvais ça commode...

Merci