Est-ce que j'utilise cette méthode de manière correcte? Pour autant que je le comprends, le contrôle suivant doit être faux:C# Utilisation de Enumerable.Range()
int myVal = 37;
if (Enumerable.Range(0, 10).Contains(myVal))
// Do something
else if (Enumerable.Range(11, 33).Contains(myVal))
// Do somethiong else
Mais je semble obtenir des cas où //Do somethiong else
est exécuté. Est-ce que je ne peux pas utiliser Enumerable.Range
de cette façon?
bon de savoir, mais je me demande combien de gens pensent intuitivement que! Je souhaite que les paramètres correspondent aux utilisations les plus évidentes de l'OMI. – Chad
@Chad: OK, supposons que nous l'ayons fait à votre façon. Comment représentez-vous (1) une plage vide, (2) une plage qui a comme dernier élément Int32.MaxValue? –
@Eric: Assez juste pour une plage vide (que diriez-vous de Enumerable.Empty like String.Empty?), Mais ne pourriez-vous pas simplement faire Enumerable.Range (0, Int32.MaxValue) pour avoir le dernier élément Int32.MaxValue dans la version (début, fin)? – Chad