Created
September 30, 2014 03:44
-
-
Save Fhernd/0ada74ba7c9640575d24 to your computer and use it in GitHub Desktop.
Método de extensión para una enumeración.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
namespace Articulo.CSharp.MetodosExtension | |
{ | |
// Definición de la enumeración: | |
public enum Notas | |
{ | |
F = 0, | |
D = 1, | |
C = 2, | |
B = 3, | |
A = 4 | |
} | |
// Clase estática con métodos de extensión | |
// para la enumeración `Notas`: | |
public static class ExtensionesNotas | |
{ | |
// Representa la nota mínima para pasar un examen: | |
public static Notas NotaMinima = Notas.D; | |
// Determina si la nota dada para un estudiante | |
// supera o iguala la nota mínima: | |
public static bool Paso (this Notas nota) | |
{ | |
return nota >= NotaMinima; | |
} | |
} | |
public sealed class EnumeracionMetodosExtension | |
{ | |
public static void Main() | |
{ | |
Notas nota1 = Notas.D; | |
Notas nota2 = Notas.F; | |
Console.WriteLine("\n¿Con la nota `D` pasa?: {0}", nota1.Paso() ? "Sí" : "No"); | |
Console.WriteLine("¿Con la nota `F` pasa?: {0}\n", nota2.Paso() ? "Sí" : "No"); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment