IMHO <T extends Object> je zbytecke, jelikoz kazdy objekt od nej dedi ;-)
ale bez Class<T> to jde taky udelat ;-) (alespon Idea nema nic proti)
public static <T extends Collection> T value(Object value, T defValue) {
T result;
try {
//noinspection unchecked
result = (T) defValue.getClass().cast(value);
} catch (ClassCastException e) {
result = defValue;
}
return result;
}
Petr Prochazka
2008/11/11 Ján Valkovič <[EMAIL PROTECTED]>
> Zdravim,
> da sa toto:
> public static <T extends Object>T cast(Object value, T defaultValue,
> Class<T> type) {
> T result;
>
> try {
> result = type.cast(value);
> } catch(ClassCastException e) {
> result = defaultValue;
> }
>
> return result;
> }
>
> urobit s prvymi 2 parametrami? Parameter defaultValue uz obsahuje typ T,
> takze 3. parameter by nemal byt potrebny. Skusal som to urobit s 2, ale
> nepodarilo sa mi to, tak ma zaujima, ci sa to da, inac to nepotrebujem,
> zaujima ma to, len preto, ze sa mi to nepodarilo :-)
>
> Vdaka (aj za pripadne pripomienky k tym par riadkom kodu)
>
> ya
>
>
>