AD

¿Ya dominas lo básico? Un curso estructurado de VB.NET es la vía rápida para dar el salto.

Ver cursos de VB.NET en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔷Lecciones de VB.NET
Lección 29 / 68

Funciones de orden superior

En esta lección pasarás un trozo de comportamiento como si fuera un dato.

Array.Sort acepta una función de comparación que decide el orden. Devolver un número negativo, cero o positivo indica cuál va antes.

El código de ejemplo ordena unos números de mayor a menor invirtiendo la resta.

Ese convenio de «negativo, cero o positivo» viene de C y aparece en todos los lenguajes. Escribir b - a en lugar de a - b invierte el orden, y es un truco tan compacto que conviene comentarlo: con números muy grandes, además, la resta puede desbordar y dar un resultado con el signo equivocado. La forma segura es comparar y devolver -1, 0 o 1.

Las funciones anónimas de VB se escriben Function(a, b) expresión para una línea, o con End Function para varias. También existen las de tipo Sub, cuando no devuelven nada.

En código moderno, LINQ evita casi siempre escribir comparadores a mano: OrderByDescending(Function(n) n) dice lo mismo sin depender del convenio del signo.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar VB.NET directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)